Un algoritmo, è una sequenza di istruzioni semplici, che eseguite in ordine passo-passo portano alla soluzione di un problema. Il nome deriva dal nome del matematico persiano Muhammad ibn Mūsa ‘l-Khwārizmī, che è stato il primo nella storia a fare riferimento esplicito a questo concetto.
Le istruzioni di un algoritmo devono essere elementari, in particolare
Proviamo a fare un esempio molto banale:
Algoritmo Telefona:
Come potete notare le istruzioni sono molto elementari.
All’interno di un algoritmo è possibile anche fare delle scelte, in modo da seguire istruzioni diverse nel caso accada qualcosa di particolare. Proviamo ad aggiungere qualche dettaglio all’esempio di prima.
Algoritmo Telefonata:
Un altro requisito per un buon algoritmo è che le istruzioni coprano tutte le situazioni possibili. Chi segue le istruzioni presenti nell’algoritmo non deve trovarsi nella situazione di non sapere cosa fare. Cosa succede nel nostro esempio se il telefono è libero e la persona non è in casa? Supponendo che la chiamata non si chiuda automaticamente dopo un certo tempo, come accade nella realtà, l’algoritmo si bloccherebbe, perchè non è ponderata l’ipotesi che la persona non risponda al telefono. Si potrebbe quindi impreziosire un pò il nostro esempio, aggiungendo delle istruzioni da eseguire in caso la persona chiamata non risponda al telefono:
Algoritmo Telefonata:
Questo per oggi è quanto, spero di essere stato chiaro, se non lo sono stato, postate pure le vostre perplessità fra i commenti.
Alla prossima!
Dal mio vecchio blog, post dell'8 Nov 2007