Strutture di controllo

Slides:



Advertisements
Presentazioni simili
Programma: main() { istruzioni } ; assegnazione condizione ciclo istruzione: ;
Advertisements

Informatica 22/03/2012.
Analisi – Progettazione - Programmazione
Linguaggi algoritmici
Iterazione while – do while - for.
Iterazione A. Ferrari.
3TC – 5/11/2010 Cicli while e do.. While Contatori e Totalizzatori.
Sviluppo di programmi strutturati
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F3 Iterazione.
Universita di Camerino
Informatica Generale Marzia Buscemi
INFORMATICA Strutture iterative
Iterazione enumerativa (for)
Informatica Problema Algoritmo Programma
Prof.ssa Chiara Petrioli -- Fondamenti di programmazione 1, a.a. 2009/2010 Corso di Fondamenti di programmazione a.a.2009/2010 Prof.ssa Chiara Petrioli.
Prof.ssa Chiara Petrioli -- corso di programmazione 1, a.a. 2006/2007 Corso di Programmazione 1 a.a.2006/2007 Prof.ssa Chiara Petrioli Corso di Laurea.
Algoritmi Politecnico di Milano
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Costrutti iterativi Marco D. Santambrogio – Ver. aggiornata al 9 Agosto 2013.
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
1 Corso di Informatica (Programmazione) Lezione 11 (19 novembre 2008) Programmazione in Java: controllo del flusso (iterazione)
1 Corso di Informatica (Programmazione) Lezione 10 (12 novembre 2008) Programmazione in Java: espressioni booleane e controllo del flusso (selezione)
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L’attività di.
Introduzione alla programmazione lll
ITERAZIONE e RICORSIONE (eseguire uno stesso calcolo ripetutamente) ITERAZIONE: ripetere piu volte una sequenza di operazioni istruzioni: for, while, do.
DAL PROBLEMA ALL'ALGORITMO Problemi e Programmi Paolo Amico
Somma = A + B start Stampa Somma Leggi A,B stop Sub SOMMA( ) Dim A, B as Integer A = InputBox("Immetti un numero") B = InputBox(Immetti un secondo numero)
ALGORITMI E PROGRAMMAZIONE STRUTTURATA
ITERAZIONE e RICORSIONE (eseguire uno stesso calcolo ripetutamente)
Istruzioni di ripetizione in Java
Istruzioni Iterative Nicola Fanizzi
Strutture di controllo in C -- Flow Chart --
Lezione 2 Programmare in ASP
Algoritmi e diagrammi di flusso
Elementi di Informatica
Elementi di Informatica
ELEMENTI DI PROGRAMMAZIONE
Lezione 6 Strutture di controllo Il condizionale
PROBLEMA ALGORITMO PROGRAMMA LINGUAGGI di PROGRAMMAZIONE
Cicli in Fortran I cicli consentono di eseguire una sequenza di istruzioni più di una volta due tipi: Cicli iterativi Cicli while.
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA INTERMEDIA DEL 12 MARZO 2007 NOME: COGNOME: ________________________________________________________________________________.
BIOINFO3 - Lezione 211 INPUT La lettura di un input dallo standard input (tastiera) si effettua utilizzando lespressione. Quando il programma incontra.
BIOINFO3 - Lezione 15 ISTRUZIONI
Capitolo 4 (Deitel) Le strutture di controllo in C
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA INTERMEDIA DEL 12 MARZO 2007 NOME: COGNOME: ________________________________________________________________________________.
Programmazione Strutturata
L’iterazione while La sintassi è la seguente: while (condizione) {
Ripetizione La vera potenza dei programmi per computer risiede nella capacità di ripetere lo stesso calcolo o sequenza di istruzioni più volte, ogni volta.
TURBOPASCAL L’iterazione - prof. V. Riboldi -.
ALGORITMI Un algoritmo (detto anche procedura, prescrizione, processo, routine, metodo) è un insieme di regole (dette anche direttive o istruzioni) che,
Introduzione a Javascript
R 255 G 211 B 8 R 255 G 175 B 0 R 127 G 16 B 162 R 163 G 166 B 173 R 104 G 113 B 122 R 234 G 234 B 234 R 175 G 0 B 51 R 0 G 0 B 0 R 255 G 255 B 255 Supporting.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Costrutti iterativi Marco D. Santambrogio – Ver. aggiornata al 26 Marzo 2014.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali
1 Fabio Scotti – Università degli Studi di Milano Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza Valentina Ciriani ( )
13 ottobre Decisioni F. Bombi 13 ottobre 2002.
PRIMI ELEMENTI DI PROGRAMMAZIONE
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
C++:Strutture di Controllo
Diagrammi a blocchi.
ALGORITMI Dal problema al programma Definizione di algoritmo
GLI ALGORITMI Appunti preparati dalla prof.ssa Maria D’Angelo.
Informatica Problemi e algoritmi. una situazione che pone delle domande cui si devono dare risposte. Col termine problema o situazione problematica s’indica.
Luca Chichisola1 Dal problema al programma LUCA CHICHISOLA.
Istruzioni e algoritmi. Istruzioni Operative I passi elementari che compongono l’algoritmo sono le istruzioni. Distinguiamo: Istruzioni di input Istruzioni.
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
Dal PROBLEMA all’ALGORITMO
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Costrutti iterativi Marco D. Santambrogio – Ver. aggiornata al 22 Marzo 2016.
DAL DIAGRAMMA AL CODICE
Transcript della presentazione:

Strutture di controllo

Problematica sul controllo Le strutture di controllo permettono di definire il percorso (flusso) di ogni istruzione all'interno di un programma; La programmazione strutturata propone tre schemi: Sequenza Alternativa o Selezione Iterazione

Risultato fondamentale TEOREMA (Böhm-Jacopini) : Dato un programma, ne esiste uno equivalente che utilizza esclusivamente le tre strutture di controllo fondamentali: sequenza, selezione e iterazione.

La sequenza La sequenza è il più semplice dei tre costrutti fondamentali e viene utilizzato quando le istruzioni devono essere eseguite ordinatamente, con lo stesso ordine con cui sono scritte, per cui l’istruzione successiva è quella in posizione successiva. E’ spesso indicata col termine blocco.

Sequenza La sequenza Diagramma a blocchi

Esempio Problema: Calcolare l’area di un rettangolo, essendo note la base e l’altezza. I dati iniziali sono: il valore della base, il valore dell’altezza. Inoltre conosciamo la relazione che permette di calcolare l’area del rettangolo. La procedura (parte esecutiva) può essere schematizzata nel modo seguente: LEGGI i valori dell’altezza e della base (l’esecutore deve acquisire i dati dall’esterno); CALCOLA L’AREA; SCRIVI il risultato (l’esecutore deve mandare il risultato in output).

area-->base*altezza INIZIO O “Inserire base e altezza” I base I altezza area-->base*altezza O area FINE

Esercizi Rappresenta con il diagramma a blocchi gli algoritmi che risolvono i seguenti problemi: Noti i cateti determinare l’area e il perimetro di un triangolo rettangolo; Noti il voto dell’orale, quello di laboratorio e quello dello scritto, visualizzare il voto medio; Un noleggio di automobili applica le seguenti tariffe: 75 euro di spesa fissa più 0.5 euro per ogni km percorso. Calcolare la spesa del noleggio.

Selezione o alternativa La selezione o alternativa permette di effettuare una scelta fra due possibili alternative. Per effettuare la scelta occorre valutare una condizione. Possiamo distinguere tre tipi di alternative: a una via a due vie multipla

Alternativa a una via Diagramma a blocchi condizione Istruzione falso vero condizione Istruzione

Alternativa a due vie Diagramma a blocchi condizione Istruzione 1 vero falso condizione Istruzione 1 Istruzione 2

Esempio Dati due numeri in input visualizzare il massimo tra i due.

Tabella delle variabili Nome Descrizione Tipo Utilizzo Primo Primo numero numerico Input Secondo Secondo numero Massimo Massimo tra X e Y Output/Lavoro

Diagramma a blocchi o i i o Primo Secondo Primo > Secondo INIZIO o Diagramma a blocchi “Inserisci i due numeri” i Primo i Secondo vero falso Primo > Secondo Massimo = Primo Massimo = Secondo o Massimo FINE

Esercizi: Dati due numeri visualizzare il minimo tra i due. Dato il nome e l’età di una persona , stampare il nome e la scritta MAGGIORENNE se la persona è maggiorenne, MINORENNE altrimenti. Dati il nome e il sesso (F o M) di una persona, si visualizzi il messaggio “Egregio Signore” o “Gentilissima signora” a seconda che si tratti di un uomo o di una donna. 15

Strutture di ripetizione I costrutti di ripetizione detti anche cicli o di iterazione, consentono di eseguire molte volte la stessa istruzione fino al verificarsi di una condizione. Due tipi: Condizionale: la ripetizione viene decisa in base al risultato di un test, da effettuarsi ad ogni iterazione ripeti Istruzione finché succede una certa cosa mentre succede una certa cosa esegui Istruzione Enumerativa: ripetizione di un’azione per un numero di volte fissato all’inizio dell’esecuzione dell’istruzione “ripeti tot volte” Sono equivalenti ma appropriati in situazioni diverse!

Ripetizione condizionale Ripetizione precondizionale Controllo la condizione; in base al suo valore di verità l’esecutore stabilisce se eseguire il blocco oppure continuare con l’esecuzione della prima istruzione successiva al ciclo

Precondizionale Se la condizione è inizialmente falsa, il blocco di istruzioni non viene mai eseguito. Quindi un blocco con una ripetizione precondizionale può: essere eseguito più volte non essere mai eseguito Attenzione: Il corpo di un blocco con una ripetizione precondizionale deve alla fine rendere falsa la condizione perchè il ciclo si fermi, altrimenti si va avanti all’infinito (loop)

Ripetizione precondizionale Codice in Visual Basic: Do While Condizione Istruzioni Loop Che equivale a: Valuta la condizione Se il valore è vero torna al passo 1 Se il valore è falso esci dal ciclo F Condizione V istruzioni

Ripetizione condizionale Ripetizione postcondizionale L’esecutore esegue il blocco di istruzioni, poi controlla la condizione; in base al suo valore di verità l’esecutore decide se eseguire ancora il blocco oppure continuare l’esecuzione della prima azione successiva.

Ripetizione postcondizionale Codice in Visual Basic Do istruzioni Loop Until condizione Che equivale a: Esegui le istruzioni Valuta la condizione Se il valore è falso si torna al passo 1 Se il valore è vero si esce dal ciclo istruzioni V condizione F

Postcondizionale Con una ripetizione postcondizionale, se la condizione è inizialmente vera, il blocco di istruzioni verrà comunque eseguita almeno una volta. Per essere sicuri che il ciclo termini, esso dovrà contenere qualche istruzione che modifichi il valore di verità dell’espressione.

Ripetizione enumerativa In certi casi si conosce a priori il numero delle iterazioni che devono essere eseguite Esiste una struttura di ripetizione che funziona esattamente in questo modo: utilizza una variabile contatore che viene inizializzata ad un valore particolare e successivamente incrementata fino ad un valore massimo. Per ogni valore che il contatore assume viene ripetuta l’esecuzione di un blocco di istruzioni.

Ripetizione enumerativa Codice in Visual Basic: For Contatore = min to max step 1 istruzioni Next Contatore Che equivale a: Inizializza il Contatore al valore min; Se Contatore > massimo esci, altrimenti vai alla 3 Esegui istruzioni Incrementa Contatore di 1 (step) vai alla 2 For Contatore = min to max step 1 istruzioni 24