Sei sulla pagina 1di 2

Algoritmo

La parola algoritmo deriva dal nome del matematico arabo Muhammad Ibn Musa
al-Khuwarizmi (vissuto nel 9° secolo a Baghdad) e indica una successione di
istruzioni per risolvere un problema.

LA MACCHINA NON CAPISCE IL LINGUAGGIO PARLATO


(finché non abbiamo inventato le AI)
es: chiedi al computer di fare 2+2
partendo dal codice binario venne prima creato un linguaggio macchina (spiega
all’hardware come svolgere operazioni di base)
successivamente sono stati creati altri linguaggi via via più ASTRATTI che
permettono ai programmatori di creare il software

linguaggio macchina linguaggio assemby linguaggio C

bassa astrazione media astrazione alta astrazione


(le operazioni binarie (comanda la macchina (permette di creare
vengono fatte per eseguire le istruzioni software che sfruttano il
direttamente) binarie) linguaggio assembly per
comandare la macchina)

A qualsiasi livello di astrazione stiamo operando è sempre necessario sviluppare


ALGORITMI per implementare i programmi. Ogni algoritmo ha varie caratteristiche:

1. FINITEZZA: l’algoritmo ha sempre un inizio e una fine


2. DISCRETEZZA: l’algoritmo è composto da un numero finito di istruzioni
3. UNIVOCITA’: le istruzioni dell’algoritmo devono essere univoche e sempre
interpretabili nello stesso modo
4. RIPETIBILITA’: l’algoritmo da sempre gli stessi risultati partendo dagli stessi
dati iniziali (2+2=4 sempre)
5. GENERALITA’: l’algoritmo risolve sempre una famiglia di problemi, non un
problema specifico (l’algoritmo risolve la somma, non 2+2)
6. ORDINE: le istruzioni vengono svolte in un ordine preciso

Diagrammi a Blocchi (Flow Chart)


inizio / fine : ovale
operazioni logico / matematiche : rettangolo
operazioni input / output : parallelogramma
operazioni selezione (se allora) : rombo
LE VARIABILI
Le variabili sono una porzione di RAM in cui salviamo dei dati.
Questi dati sono di tipo ELEMENTARE, ovvero:
- intero positivo o negativo (int)
- con la virgola, positivo o negativo (float)
- una lettera (char)
- un valore di tipo vero/falso (bool)
Ogni variabile è caratterizzata da:
- un indirizzo (ovvero la posizione nella ram)
- il tipo di dato contenuto
- il valore contenuto
- il nome che viene dato alla variabile nel programma
Le operazioni che puoi fare con una variabile
- dichiarazione: creiamo una nuova variabile, dandogli tipo e nome (l’indirizzo è
assegnato automaticamente)
- inizializzazione: assegnamo per la prima volta il contenuto
- assegnazione: diamo un nuovo valore alla variabile

Le variabili sono necessarie per creare quasi ogni programma.


Per dichiarare in un flow chart una variabile usiamo l’operazione logico/matematica.

Potrebbero piacerti anche