In breve: Un algoritmo è una sequenza di passi per risolvere un problema. I linguaggi di programmazione servono a scriverlo per il computer.
Che cos'è un algoritmo
Ogni giorno seguiamo procedure ordinate per fare qualcosa. Pensa alla ricetta di una torta: ingredienti, dosi, passaggi nell'ordine giusto.
Un algoritmo funziona allo stesso modo. È una serie finita di istruzioni chiare. Ogni passo porta verso un risultato preciso.
Le istruzioni devono essere senza ambiguità. Non possono dipendere da interpretazioni personali. Il computer esegue solo ciò che gli viene detto.
Dai problemi al programma
Per risolvere un problema serve prima un'idea. Poi questa idea diventa un algoritmo. Infine l'algoritmo viene scritto in un linguaggio di programmazione.
I linguaggi di programmazione esistono in molte famiglie. I linguaggi a basso livello sono vicini alla macchina. I linguaggi ad alto livello sono più vicini al modo umano di scrivere.
Esistono diverse tipologie principali. I linguaggi imperativi descrivono i passi da eseguire. I linguaggi dichiarativi descrivono il risultato voluto. Alcuni linguaggi sono compilati, altri interpretati.
Lo stesso algoritmo può essere scritto in linguaggi diversi. La logica resta uguale, cambia solo la sintassi.
Esempi pratici
Algoritmo per calcolare la media di due numeri:
- Leggi il primo numero.
- Leggi il secondo numero.
- Somma i due numeri.
- Dividi il risultato per due.
- Mostra il risultato.
Algoritmo per attraversare la strada in sicurezza:
- Avvicinati alle strisce.
- Guarda a sinistra e a destra.
- Se non arrivano veicoli, attraversa.
- Altrimenti aspetta e ripeti il controllo.
Questi esempi mostrano due caratteristiche importanti. Il primo usa operazioni matematiche in sequenza. Il secondo usa una scelta condizionale e una ripetizione.
Parole difficili
- Algoritmo: sequenza ordinata e finita di istruzioni per risolvere un problema.
- Linguaggio di programmazione: insieme di regole per scrivere istruzioni eseguibili dal computer.
- Sintassi: regole formali che stabiliscono come scrivere correttamente le istruzioni.
- Compilato: linguaggio tradotto interamente in codice macchina prima dell'esecuzione.
- Interpretato: linguaggio tradotto ed eseguito istruzione per istruzione durante l'uso.
- Condizionale: istruzione che esegue passi diversi a seconda di una scelta.
Riferimenti
- Norma: Indicazioni nazionali riguardanti gli obiettivi specifici di apprendimento per i licei
- Obiettivo formativo coperto: ob.liceo-scientifico.informatica.cl2.algoritmi-linguaggi.01