Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – 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 uneventuale 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 Nellelaboratore gli algoritmi per la soluzione di particolari problemi sono espressi mediante un linguaggio di programmazione I 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. uomo macchina Il concetto di algoritmo
La descrizione è quindi costituita da: Istruzioni, cioè costrutti linguistici che prescrivono lesecuzione di operazioni Strutture di controllo, cioè costrutti linguistici che indicano allesecutore lordine 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 è occupato ALLORA 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 tastiera FINCHE utente cercato ha segnale libero Il controllo viene fatto dopo lesecuzione dellistruzione 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 tastiera MENTRE utente cercato ha segnale occupato Il concetto di algoritmo
Requisiti fondamentali di un algoritmo Completezza Univocità Finitezza La descrizione è effettuata in un linguaggio comprensibile allesecutore e mediante un insieme finito di operazioni elementari, note allesecutore 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 condizione alloraaltrimenti Istruzione 5Istruzione 6 Sequenza Iterazione Selezione Rappresentazione a blocchi
Sollevare i ricevitore Attendere il segnale di linea Ripeti Comporre il numero Componi una cifra Finchè numero intero Attendere la risposta Se la linea è libera Se linterlocutore risponde Condurre la conversazione Deporre il ricevitore Altrimenti Deporre il ricevitore Altrimenti (se la linea è occupata) Deporre il ricevitore Esempio di algoritmo: effettuare una telefonata
Esempio di algoritmo: calcolo del massimo tra due numeri
Esempio di algoritmo: calcolo del massimo tra n numeri
Algoritmi Equivalenti