MORENO SARDELLA · CORSO BASE
← Tutte le lezioni
Lezione 1

L'ALGORITMO

Prima ancora di scrivere codice, dobbiamo capire cosa significa "risolvere un problema" per un computer. La risposta è una sola parola: algoritmo.

01
Definizione

Cos'è un algoritmo

Un algoritmo è un insieme di istruzioni che, eseguite in ordine, portano alla soluzione di un problema. È la "ricetta" che trasforma i dati di partenza nel risultato voluto.

PROBLEMA ALGORITMO passo dopo passo SOLUZIONE
L'algoritmo è il "ponte" che porta dal problema alla sua soluzione.
02
Caratteristiche

Le proprietà

Non basta una sequenza qualsiasi di passi: perché sia un vero algoritmo, deve rispettare alcune proprietà.

In pratica — "fai la maionese" non è un algoritmo (ambiguo); "sbatti 1 tuorlo, aggiungi 1 cucchiaio d'olio, mescola per 30 secondi, ripeti finché non è densa" lo è: passi chiari, finiti ed eseguibili.
03
Le tre strutture

I tre costrutti

Qualunque algoritmo, per quanto complesso, si costruisce combinando solo tre costrutti fondamentali. È un risultato sorprendente ma dimostrato (teorema di Böhm-Jacopini).

1 · Sequenza

Le istruzioni vengono eseguite una dopo l'altra, nell'ordine in cui sono scritte. È il costrutto più semplice.

inizio istruzione 1 istruzione 2 istruzione 3 fine
Sequenza: un passo dopo l'altro, sempre tutti eseguiti.

2 · Selezione

Si verifica una condizione booleana (vera o falsa) e, in base al risultato, si esegue il ramo vero oppure il ramo falso. È la capacità di "decidere".

inizio condizione? ramo falso ramo vero fine F V
Selezione: se la condizione è vera si va a destra, se è falsa a sinistra.

3 · Iterazione

Un blocco di istruzioni (il corpo del ciclo) viene ripetuto finché una condizione resta vera. È ciò che permette di non riscrivere mille volte lo stesso codice.

inizio condizione? corpo del ciclo fine V F
Iterazione: finché la condizione è vera si ripete il corpo, poi si esce.
Da ricordare — sequenza, selezione e iterazione sono i mattoni con cui costruiremo ogni programma del corso. Tienili a mente: li ritroverai in tutte le lezioni.