Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di...
-
Upload
mariella-castellano -
Category
Documents
-
view
214 -
download
1
Transcript of Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di...
Corso di Laurea in Biotecnologiecorso di
InformaticaPaolo MereghettiDISCo – Dipartimento di Informatica, Sistemistica e Comunicazione
Programmazione in C
Sequenza di azioni (prescrizioni) per effettuare un dato compito
La definizione di un algoritmo è basata sulla rappresentazione di
informazioni e implica una loro trasformazione e un’eventuale
produzione di nuove informazioni
Esempio: ricetta per la realizzazione di un piatto
istruzioni di montaggio di un elettrodomestico
prelievo bancomat ecc…..
ossia
La descrizione di una serie di operazioni la cui esecuzione
permette di risolvere un dato problema
Il concetto di algoritmo
Gli algoritmi sono espressi mediante un linguaggio e sono
realizzati da un esecutore
Nell’elaboratore gli algoritmi per la soluzione di particolari problemi sono espressi mediante un linguaggio di programmazioneI linguaggi di programmazione sono i linguaggi formali che la macchina è in grado di comprendere
Un programma è la descrizione di un algoritmo ed è costituito da una sequenza di istruzioni che il calcolatore è in grado di comprendere ed eseguire.
uomomacchina
Il concetto di algoritmo
La descrizione è quindi costituita da:
Istruzioni, cioè costrutti linguistici che prescrivono l’esecuzione di operazioni
Strutture di controllo, cioè costrutti linguistici che indicano all’esecutore l’ordine in cui eseguire le operazioni
Tre principali strutture di controllo:
• Sequenza• Selezione• Iterazione
Il concetto di algoritmo
Struttura di selezione
SE condizione
permette la prescrizione di un azione sulla base del verificarsi di una condizione
Esempio: telefonata
struttura di controllo
ALLORA istruzione1
ALTRIMENTI istruzione2
SE il numero è occupatoALLORA ricomponi numero
ALTRIMENTI inizia conversazione
Il concetto di algoritmo
Struttura di iterazione
RIPETI istruzione
permette la prescrizione di ripetizione di un azione sino al momento in cui si verifica una determinata condizione
Esempio: telefonata
struttura di controllo
FINCHE’ condizione
RIPETI componi numero sulla tastieraFINCHE’ utente cercato ha segnale libero
Il controllo viene fatto dopo l’esecuzione dell’istruzione
Uscita per condizione verificata (vera)
Il concetto di algoritmo
Altre espressioni di struttura di iterazione
RIPETI istruzione
Esempio: telefonata
MENTRE condizione
RIPETI componi numero sulla tastieraMENTRE utente cercato ha segnale occupato
Il concetto di algoritmo
Requisiti fondamentali di un algoritmo
Completezza
Univocità
Finitezza
La descrizione è effettuata in un linguaggio comprensibile all’esecutore emediante un insieme finito di operazioni
elementari, note all’esecutore
Tiene conto di tutte le possibili condizioni che
si possono verificare durante la sua esecuzione
In un numero finito di passi il compito viene
portato a termine
Il concetto di algoritmo
Rappresentazione schematica di un algoritmo:
Istruzione 1
Istruzione 2
Istruzione 4
RIPETI
FINCHE’ condizione
Istruzione 3
condizione falsa
condizione vera
SE condizioneallora altrimenti
Istruzione 5 Istruzione 6
Sequenza
Iterazione
Selezione
Rappresentazione a blocchi
Sollevare i ricevitoreAttendere il segnale di linea
RipetiComporre il numero Componi una cifra Finchè numero interoAttendere la rispostaSe la linea è libera
Se l’interlocutore rispondeCondurre la conversazioneDeporre il ricevitore
AltrimentiDeporre il ricevitore
Altrimenti (se la linea è occupata)Deporre il ricevitore
Esempio di algoritmo: effettuare una telefonata
Sì
Passo P1
Inizio
Letturax e y
x – y
>0? No
Scrittura“max è x”
Scrittura“max è y”
Passo P2
Fine
Esempio di algoritmo: calcolo del massimo tra due numeri
Inizio
Letturanumeri
x1, x2, …
m max(x1, x2)
Passo P1
Sì Altri numerida esaminare?
No
Prendi i primi due numeri x1 e x2
Scrittura“max è m”
Fine
Prendi il successivo, xi
m max(m, xi)
Passo P2
Passo P3
Esempio di algoritmo: calcolo del massimo tra n numeri
Inizio
Letturanum
Sì num>0? No
max 0
Scrittura
“max”
Fine
num>max?
max num
SìNo
Inizio
Letturanumerix1, x2, …
mmax(x1, x2)
Passo P1
Sì Altri numeri da
esaminare?No
Prendi i primi due numeri x1 e x2
Scrittura“max è m”
Fine
Prendi il successivo, xi
mmax(m, xi)
Passo P2
Passo P3
Algoritmi Equivalenti