Gli Algoritmi in informatica

algoritmiGli Algoritmi in informatica

Un algoritmo è un procedimento che risolve un determinato problema attraverso un numero finito di passi elementari. Il termine deriva dalla trascrizione latina del nome del matematico persiano al-Khwarizmi[1], che è considerato uno dei primi autori ad aver fatto riferimento a questo concetto. L’algoritmo è un concetto fondamentale dell’informatica, anzitutto perché è alla base della nozione teorica di calcolabilità: un problema è calcolabile quando è risolvibile mediante un algoritmo. Inoltre, l’algoritmo è un concetto cardine anche della fase di programmazione dello sviluppo di un software: preso un problema da automatizzare, la programmazione costituisce essenzialmente la traduzione o codifica di un algoritmo per tale problema in programma, scritto in un certo linguaggio, che può essere quindi effettivamente eseguito da un calcolatore.

Fonte: Wikipedia

Un algoritmo nell’informatica è una seguenza di passi (o calcoli) da compiere per risolvere un problema.

Qui sotto propongo un esempio di algoritmo

L’algoritmo di addizione in colonna che si impara alle scuole elementari e utilizzabile per numeri rappresentati secondo lo schema posizionale qualunque sia la base di rappresentazione. Un semplice esempio illustra l’algoritmo nel caso di numeri x e y rappresentati in base 2, che sono quelli di nostro immediato interesse:

Addizione binaria

L’operazione elementare, che viene ripetuta nella generazione “da destra verso sinistra” del risultato (cio é dalla posizione meno signi cativa a quella pi u signi cativa), consiste nella somma di al pi u 3  numeri di 1 bit ciascuno. Infatti, una tale somma e rappresentabile con al pi u due bit (1 + 1 = 102) e  dunque pu o generare un riporto solo sulla posizione immediatamente successiva. In questo modo  viene mantenuto l’invariante che ad ogni posizione del risultato contribuisce la somma di al pi u tre  numeri di un solo bit.
Per formalizzare l’algoritmo in opportuno pseudocudice, iniziamo ponendo

x = xn-1xn-2 … x1x0; e y = yn-1yn-2 … y1y0

dove xn-1 e yn-1 sono i bit pi u signi cativi mentre x0 e y0 sono quelli meno signi cativi. Indichiamo inoltre con si, i = 0, … n i bit della somma s = x + y da calcolare; infi ne, indichiamo con ci il bit di riporto sulla posizione i-esima (i = 0, …n). Naturalmente vale c0 = 0 in quanto sulla posizione meno signi cativa non c’ e riporto.

L’aiuto ad implementare un algoritmo ci viene dato dallo sviluppo di un diagramma di flusso.

Esempio diagramma di flussoI diagrammi di flusso sono grafici creati utilizzando una successione di figure (ognuna delle quali identifica una particolare azione) che rappresentano un ragionamento logico di immediata comprensione.

 

 

 

 

 

 

 

 

Circa Staff

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *