Example: barber

AlgoBuild: Strutture iterative e selettive - UNISA

Fondamenti di InformaticaAlgoBuild: Strutture iterative e selettiveProf. Christian EspositoCorso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) 2016/17 AlgoBuild: Strutture iterative e selettiveAlgoBuild: Strutture iterative e selettiveOUTLINE Strutturaselettiva Esempi struttura iterativa FOR (ciclo a condizione iniziale) Esempi struttura iterativa DO/WHILE (ciclo a condizione finale) Esempi ArrayAlgoBuild: Strutture iterative e selettive02/85 Diagrammi di Flusso: Blocco di Decisione Binaria (o Condizionale) Possono essere presenti istruzioni condizionali, la cui esecuzione dipende cio da scelte effettuate in base ai dati Concettualmente, possiamo immaginare che il flusso di esecuzione si ramifichi In base ad una condizioneviene deciso se eseguire un operazione oppureun altra?

Strutture di Controllo: Selezione Semplice AlgoBuild: Strutture iterative e selettive 04/85. Strutture di Controllo: Selezione a Due Vie ... Struttura Selettiva IF Ci verrà richiesto di inserire l’espressione (condizione booleana) che la struttura selettiva IF deve soddisfare. Tale espressione può

Tags:

  Struttura, Semplice

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of AlgoBuild: Strutture iterative e selettive - UNISA

1 Fondamenti di InformaticaAlgoBuild: Strutture iterative e selettiveProf. Christian EspositoCorso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) 2016/17 AlgoBuild: Strutture iterative e selettiveAlgoBuild: Strutture iterative e selettiveOUTLINE Strutturaselettiva Esempi struttura iterativa FOR (ciclo a condizione iniziale) Esempi struttura iterativa DO/WHILE (ciclo a condizione finale) Esempi ArrayAlgoBuild: Strutture iterative e selettive02/85 Diagrammi di Flusso: Blocco di Decisione Binaria (o Condizionale) Possono essere presenti istruzioni condizionali, la cui esecuzione dipende cio da scelte effettuate in base ai dati Concettualmente, possiamo immaginare che il flusso di esecuzione si ramifichi In base ad una condizioneviene deciso se eseguire un operazione oppureun altra?

2 Diramazione(condizionale)AlgoBuild: Strutture iterative e selettive03/85 Strutture di Controllo: Selezione SempliceAlgoBuild: Strutture iterative e selettive04/85 Strutture di Controllo: Selezione a Due VieAlgoBuild: Strutture iterative e selettive05/85 struttura Selettiva IF Esempio Definiamo un diagramma di flusso che Prende in input la variabile VOTOda parte dell utente Mostra in output Superato! seVOTO maggiore o uguale di 18 NON Superato , altrimentiAlgoBuild: Strutture iterative e selettive06/85 struttura Selettiva IF Iniziamo dal prendere in input la variabile VOTOAlgoBuild: Strutture iterative e selettive07/85 struttura Selettiva IFAlgoBuild: Strutture iterative e selettive08/85 struttura Selettiva IFAlgoBuild: Strutture iterative e selettive09/85 struttura Selettiva IFCi verr richiesto di inserire l espressione (condizione booleana) che la struttura selettiva IF deve soddisfare.

3 Tale espressione pu assumere un valore booleano: vero (T) o falso (F)AlgoBuild: Strutture iterative e selettive10/85 struttura Selettiva IFAlgoBuild: Strutture iterative e selettive11/85 struttura Selettiva IFFlusso di esecuzione se la condizione falsaAlgoBuild: Strutture iterative e selettive12/85 struttura Selettiva IFFlusso di esecuzione se la condizione veraAlgoBuild: Strutture iterative e selettive13/85 struttura Selettiva IF PSEUDO-CODICEPROG mainIN VOTOIF VOTO >= 18 OUT "Superato!"ELSE //if VOTO >= 18 OUT "NON Superato"END IF //VOTO >= 18 END PROG //mainAlgoBuild: Strutture iterative e selettive14/85 AlgoBuild: Strutture iterative e selettiveStruttura Selettiva IF DEMO 15/85 AlgoBuild: Strutture iterative e selettiveStruttura Selettiva IF DEMO 16/85 AlgoBuild: Strutture iterative e selettiveStruttura Selettiva IF DEMO 17/85 AlgoBuild: Strutture iterative e selettiveStruttura Selettiva IF DEMO Variabile VOTO presa in input dall istruzione precedente18/85 AlgoBuild: Strutture iterative e selettiveStruttura Selettiva IF DEMO Condizione vera19/85 AlgoBuild.

4 Strutture iterative e selettiveStruttura Selettiva IF DEMO 20/85 AlgoBuild: Strutture iterative e selettiveStruttura Selettiva IF DEMO Cosa sarebbe accaduto se avessi usato VOTO = 16?21/85 struttura Selettiva IF (Annidata) Nelle istruzioni del blocco Vero o del blocco Falso (else), possibile inserire altri blocchi di scelta In tal caso si dice che la seconda scelta risulta annidataall interno della primaC1A1BC2A2A3A4 VVFFAlgoBuild: Strutture iterative e selettive22/85 struttura Selettiva IF (Annidata) C1 Vero, C2 Vero Istruzioni eseguite: A1, A2, A4C1A1BC2A2A3A4 VVFFAlgoBuild: Strutture iterative e selettive23/85 struttura Selettiva IF (Annidata) C1 Vero, C2 Falso Istruzioni eseguite: A1, A3, A4C1A1BC2A2A3A4 VVFFAlgoBuild.

5 Strutture iterative e selettive24/85 struttura Selettiva IF (Annidata) C1 Falso Istruzioni eseguite: BC1A1BC2A2A3A4 VVFFAlgoBuild: Strutture iterative e selettive25/85 struttura Selettiva IF (Annidata) L intero blocco di scelta pi interno (dalla condizione fino al ricongiungimento) deve essere completamente contenuto all interno di uno dei rami del blocco pi esternoC1A1BC2A2A3A4 VVFFAlgoBuild: Strutture iterative e selettive26/85 struttura Selettiva IF (Annidata): Esempio 1 L esito dell esame di uno studente pu assumere una delle seguenti quattro valutazioni Sufficiente:se il voto compreso tra 18 e 21 Buono:se il voto compreso tra 22 e 25 Ottimo:se il voto compreso tra 26 e 28 Eccellente:se il voto 29 o 30 Un voto validose compreso tra 0 e 30 AlgoBuild: Strutture iterative e selettive27/85 struttura Selettiva IF (Annidata): Esempio 1 Controllo che il voto sia validoAlgoBuild: Strutture iterative e selettive28/85 struttura Selettiva IF (Annidata): Esempio 1Se il voto minore di 18, l esame non superatoAlgoBuild: Strutture iterative e selettive29/85 struttura Selettiva IF (Annidata): Esempio 1 AlgoBuild.

6 Strutture iterative e selettive30/85 struttura Selettiva IF (Annidata): Esempio 1IF annidatoAlgoBuild: Strutture iterative e selettive31/85 AlgoBuild: Strutture iterative e selettiveIF annidato10/85 AlgoBuild: Strutture iterative e selettiveIF annidatoAlgoBuild: Strutture iterative e selettiveIF annidatoEsempio: Risoluzione di equazioni di primo grado + = 0 La soluzione : = / Solo se 0 = ( ) Se =0 =0 = ( ) Se =0 b 0 AlgoBuild: Strutture iterative e selettive35/85 AlgoBuild: Strutture iterative e selettive36/85 AlgoBuild: Strutture iterative e selettive37/85 AlgoBuild: Strutture iterative e selettive38/85IF annidatoIF annidatoAlgoBuild: Strutture iterative e selettive39/85 AlgoBuild: Strutture iterative e selettive40/85 Strutture di Controllo: Ciclo a Condizione InizialeAlgoBuild: Strutture iterative e selettive41/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 1 Definiamoundiagrammadiflussoche Prendeininputleseguentiduevariabili X Y Memorizzae(mostrainoutput)unavariabile R=XY X X.

7 XY volte42/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 143/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 144/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 145/85 struttura Iterativa FOR Esempio 1 I=1;I<=Y;I=I+1 I=1 InizializzazionedelcicloFOR(allaprimaite razioneI=1) I<=Y CondizionediuscitadalcicloFOR(appenaIsar maggiorediY,ilcicloFORsiconcluder ) I=I+1 Incremento:adogniiterazionelavariabileIv err incrementataautomaticamentedi1 Intotaleilcicloverr eseguitoYvolteAlgoBuild: Strutture iterative e selettive46/85 struttura Iterativa FOR Esempio 1 AlgoBuild: Strutture iterative e selettive47/85 struttura Iterativa FOR Esempio 1 Rdenota la variabile in cui verr memorizzato di volta in volta l output.

8 Tale variabile inizializzata ad 1 AlgoBuild: Strutture iterative e selettive48/85 struttura Iterativa FOR Esempio 1 PSEUDO-CODICEPROG mainIN XIN YASSIGN R = 1 FOR I = 1; I <= Y; I = I + 1 ASSIGN R = R * XEND FOR //I = 1; I <= Y; I = I + 1 OUT REND PROG //mainAlgoBuild: Strutture iterative e selettive49/8550/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR DEMO (Video)Introduzione ad AlgoBuildStruttura Iterativa FOR Esempio 2 Definiamoundiagrammadiflussocherappresen tailcalcolodellamediaaritmeticadiNnumeri presiininput,dove N unavariabilepresaininputAlgoBuild: Strutture iterative e selettive51/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 2 PSEUDO-CODICE PROG mainIN NASSIGN Somma= 0 FOR I = 1; I <= N; I = I + 1IN ValoreASSIGN Somma= Valore+ SommaEND FOR //I = 1.

9 I <= N; I = I + 1 ASSIGN Media = Somma/ NOUT MediaEND PROG //main52/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 2 Richiedo Nall utente (Input)53/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 2 Imposto Sommaa zero Ci mi servir per tener traccia della somma degli N numeri54/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 2 Ciclo forche va da 1 a N Ad ogni iterazione Viene richiesto in input un numero (IN Valore) Viene aggiornata la variabile Sommache verr utilizzata successivamente per il calcolo della media aritmetica Somma = Somma + Valore 55/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 2 Calcolo la media Dividendo la somma (variabile Somma) per gli Nnumeri presi in input56/85 AlgoBuild.

10 Strutture iterative e selettiveStruttura Iterativa FOR Esempio 2Il contenuto della variabile Media viene mostrato in output57/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Demo (Video)Introduzione ad AlgoBuild58/85 AlgoBuild: Strutture iterative e selettiveStruttura Iterativa FOR Esempio 2 OSSERVAZIONE necessariofornirepreventivamentealnostro programmailnumerodivaloridicuisidovr possibilefarelamediadiuncertonumero(nonn otoapriori)divaloripresiininput?59/85 Strutture di Controllo: Ciclo a Condizione FinaleAlgoBuild: Strutture iterative e selettive60/85 struttura Iterativa DO/WHILE Esempio Definiamoundiagrammadiflussocherappresen tailcalcolodellamediaaritmeticadiuncerto numero(nonnotoapriori)divaloripresiininp utAlgoBuild: Strutture iterative e


Related search queries