Utente:Sabato nunzia/Algoritmi: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Nessun oggetto della modifica
Riga 10:
 
Un algoritmo deve essere:
* ''finito'': la strategia risolutiva descritta dall'algoritmo deve essere composta da un numero finito di azioni elementari.L'algoritmo, inoltre, deve prevedere un solo inizio e una sola fine;
* ''univoco'' o ''non ambiguo'' o ''preciso'': ogni azione deve essere definita nei suoi effetti rigorosamente e senza ambiguità per l'esecutore;
* ''generale'': deve essere valido non solo per un particolare problema, ma per tutti i problemi di una stessa classe;
* ''completo'': deve considerare tutti i casi possibili che si possono verificare durante l'esecuzione e, per ogni caso, indicare la soluzione da seguire;
* ''osservabile nei risultati'': deve esserci riscontro oggettivo del risultato.
* ''deterministico'': a ogni unità finita di tempo l'esecutore deve scegliere e compiere una e una sola azione. Si dice anche che, partendo dagli stessi dati iniziali, l'esecuzione dell'algoritmo deve fornire sempre gli stessi risultati finali.
Un algoritmo si dice efficiente quando:
* è corretto, cioè produce il risultato atteso;