Ricordate i consigli che vi abbiamo dato tempo fa per risolvere il cubo di Rubik? C’erano sequenze di operazioni da eseguire con precisione, passo dopo passo; noi le abbiamo chiamate semplicemente schemi, ma il loro nome “scientifico” è algoritmi. Gli algoritmi sono fondamentali in informatica e, per saperne di più, abbiamo chiesto aiuto a un esperto del settore, grande amico di cheScienza!
Un algoritmo è una sequenza di passi che trasformano un INPUT (dati di partenza, come gli addendi dell’addizione) in un OUTPUT (risultato dell’operazione). Facciamo un esempio per capirci. Input: pasta, sale, acqua, pomodoro |
Nell’ambito dell’informatica, l’algoritmo deve essere una sequenza di passi computazionali, ovvero passaggi che possono essere effettuati da un computer. Diciamo che la pasta al sugo non fa proprio al caso nostro… meglio lasciar fare alla mamma! Supponiamo invece di volere ordinare 10 numeri disposti a caso:
La sequenza iniziale |
||
La sequenza che vogliamo ottenere |
Qualche idea?
L’algoritmo più semplice è questo:
Supponiamo di avere due contenitori, chiamati input e output. Riempiamo il primo con i numeri da ordinare e lasciamo vuoto il secondo
Ora effettueremo i seguenti passi:
1. Prendere i primi due numeri: 3,5 |
|
2. Selezionare il più piccolo: 3 |
|
3. Confrontare il numero scelto con il successivo (quindi il terzo): 3, 7 |
|
4. Prendere il più piccolo: 3 |
|
5. Ripetere i passaggi 3. e 4. fino alla fine dei numeri
|
|
A questo punto avremo trovato il numero più piccolo tra i dieci: 1 |
|
6. Togliere il numero dal contenitore input e metterlnel contenitore output , nella prima posizione
|
|
7. Ripetere i passaggi da 1. a 6. sui nove numeri rimasti nel contenitore input, spostando ogni volta il numero trovato nella prima posizione libera del contenitore output | |
8. Alla fine otterremo: |
Che operazioni facciamo durante l’esecuzione dell’algoritmo?
- “peschiamo” dei numeri dal contenitore input
- confrontiamo dei numeri per trovare il più piccolo
- mettiamo dei numeri nel contenitore output
Queste operazioni possono essere effettuate da un computer opportunamente programmato; questo significa che l’algoritmo può essere eseguito automaticamente!
Avete mai utilizzato degli algoritmi nella vostra vita? No? Sicuri?!? Quindi non avete mai fatto, ad esempio, una moltiplicazione? Uhm… a scuola non saranno molto contenti!
Forse non ve ne siete mai accorti, ma quando svolgete un’operazione,state effettuando dei passi che partendo da un INPUT vi portano a un determinato OUTPUT.
Pensate ai passaggi necessari per moltiplicare due numeri tra loro, per esempio 36 x 8. Riuscireste a scrivere l’algoritmo giusto? Provateci, dai! E naturalmente fateci sapere come è andata.
Per cheScienza: Enrico Locatelli
Photo credit:
- Wikimedia Commons
- hackNY / Foter / Creative Commons Attribution-ShareAlike 2.0 Generic (CC BY-SA 2.0)
Lascia un Commento
Occorre aver fatto il login per inviare un commento