Concetti Chiave
- Un algoritmo è una sequenza finita di passaggi chiari e precisi per risolvere un problema, basato su azioni ordinate e definite.
- Deve essere finito, univoco, generale, completo, osservabile e deterministico per garantire la corretta esecuzione e risultati coerenti.
- L'efficienza di un algoritmo è determinata dalla sua correttezza, velocità e uso parsimonioso delle risorse.
- Gli algoritmi possono essere rappresentati tramite diagrammi a blocchi, che usano simboli intuitivi per descrizioni grafiche.
- Lo pseudolinguaggio offre una descrizione formale e priva di ambiguità, utilizzando simboli con significati univoci per la pseudocodifica.
Indice
Algoritmo
L’algoritmo - prende il nome dal matematico arabo Abu Ja’far Mohammed ibn Musa al-Khawarizmi - deve indicare in modo chiaro, sistematico e rigoroso le azioni da eseguire una dopo l’altra: vanno indicate le analisi e i dati - che devono essere il più precisi possibile, per evitare i problemi di interpretazione così da ottenere un risultato fedele a ciò che è stato chiesto - e la strategia risolutiva. L'algoritmo è il procedimento risolutivo di un problema, ed è descritto da un insieme finito e azioni elementari definite, che formano una successione ordinata e finita di passaggi, la quale esecuzione si arresta per fornire i risultati del problema partendo dai valori assunti dai dati iniziali.
Caratteristiche fondamentali
Un algoritmo, per essere definito tale, deve essere: finito, la strategia risolutiva deve essere composta da un numero finito di azioni elementari; deve essere univoco e preciso, ciò significa che ogni azione deve essere descritta minuziosamente e chiaramente per evitare i problemi di interpretazione; generale: deve essere valido per tutti i problemi della sua stessa classe; completo: vanno considerati tutti i casi possibili verificabili e indicarne la soluzione; osservabile nei risultanti, quindi i risultati devono essere esplicitati e deve esserci un riscontro oggettivo del risultato; deterministico: partendo dagli stessi dati iniziali, l'esecuzione dell'algoritmo deve dare gli stessi risultati.
L'efficienza di un algoritmo
Per risolvere un problema, esistono svariate risoluzioni differenti tuttavia solo una delle tante va selezionata, ciò è possibile tramite un parametro detto efficienza. Un algoritmo si può definire efficiente quando è corretto, è veloce ed è parsimonioso - per quanto riguarda le risorse utilizzate per produrre il risultato.
Rappresentazione degli algoritmi
Un algoritmo è rappresentabile tramite un diagramma a blocchi o lo pseudolinguaggio.Diagramma a blocchi: è la descrizione, in modo grafico, di un algoritmo ed è rappresentata per mezzo di simboli precisi e intuitivi.
Pseudolinguaggio: è un linguaggio più preciso rispetto al linguaggio naturale che usufruisce di metafore, allegorie, sinonimi e ambiguità che non garantiscono al 100% la comprensione , senza alcuna ambiguità, del problema. Quindi lo pseudolinguaggio è un linguaggio formale, che utilizza simboli ai quali è attribuibile un solo significato, la descrizione formale dell’algoritmo è detta pseudo codice e la pseudocodifica è l’attività di scrittura dello pseudocodice.
Domande da interrogazione
- Qual è l'origine del termine "algoritmo"?
- Quali sono le caratteristiche fondamentali di un algoritmo?
- Come si rappresenta un algoritmo?
Il termine "algoritmo" deriva dal matematico arabo Abu Ja’far Mohammed ibn Musa al-Khawarizmi, e si riferisce a un procedimento risolutivo di un problema descritto da un insieme finito di azioni elementari definite.
Un algoritmo deve essere finito, univoco e preciso, generale, completo, osservabile nei risultati e deterministico, garantendo che partendo dagli stessi dati iniziali, l'esecuzione dia gli stessi risultati.
Un algoritmo può essere rappresentato tramite un diagramma a blocchi, che utilizza simboli grafici precisi, o tramite pseudolinguaggio, un linguaggio formale che evita ambiguità e utilizza simboli con un solo significato.