Vorrei sapere, se è possibile, che cosa si intende per algoritmo, magari con esempi di flow chart. Grazie

Per algoritmo si intende la descrizione dell’insieme di operazioni algebriche o logiche
necessarie per effettuare un calcolo numerico o più in generale
un procedimento matematico.


Tipici esempi di algoritmi che tutti conosciamo sono quelli che vengono
insegnati fino dalle scuole elementari per effettuare le quattro operazioni.


L’algoritmo per sommare due numeri interi positivi, ad esempio, è
il seguente:

  1. Si scrivano i due numeri opportunamente incolonnati e si tracci una linea
    orizzontale sotto il numero più in basso.
  2. A partire dalle cifre più a destra e procedendo verso sinistra:
  3. Sommare le due cifre sulla colonna e l’eventuale riporto e scrivere
    sotto la linea, sempre sulla
    stessa colonna, il valore ottenuto, se minore di dieci. Se il valore è
    maggiore di dieci si scriva la sola cifra delle unità e si memorizzi
    come riporto la cifra delle decine.
  4. Se non ci sono altre cifre da considerare: fine, altrimenti si torna al
    punto 3).

Nell’esempio abbiamo scelto di utilizzare il linguaggio comune per descrivere
l’algoritmo e questo metodo, pur avendo il vantaggio di essere comprensibile a tutti,
ha lo svantaggio di essere poco formale prestandosi quindi ad imprecisioni ed ambiguità.

Soprattutto per le applicazioni nel campo dell’informatica sono stati cercati
metodi di formulazione più formali o più espressivi. Uno di questi
è il cosiddetto “diagramma di flusso” o flow-chart.

Si tratta di un metodo grafico in cui i passi dell’algoritmo sono rappresentati da
figure geometriche la cui forma indica particolari categorie di operazioni.
Ad esempio: un rettangolo con angoli arrotondati rappresenta un punto inziale o finale,
un rettangolo una operazione, un rombo un punto di decisione, ecc.

Nella figura sotto viene riportato l'”algoritmo” per preparare una frittata,
rappresentato come diagramma di flusso1.
È opportuno però ricordare che, almeno in campo informatico,
l’uso dei diagrammi di flusso è da tempo stato sostituito da altri metodi
(pseudo-linguaggi, UML, ecc.)
ritenuti più efficaci.




Nota 1: Come si vede dall’esempio il diagramma di
flusso può essere usato per descrivere qualunque tipo di procedura,
non solo un algoritmo.