Esercitazione 4. Comandi iterativi for, while, do-while
|
|
- Graziano Pieri
- 8 anni fa
- Visualizzazioni
Transcript
1 Esercitazione 4 Comandi iterativi for, while, do-while
2 Comando for for (istr1; cond; istr2) istr3; Le istruzioni vengono eseguite nel seguente ordine: 1) esegui istr1 2) se cond è vera vai al passo 3 altrimenti termina 3) esegui istr3 4) esegui istr2 e ritorna al passo 2 Nota: se cond è falsa il ciclo non viene percorso istr1 cond T istr3 istr2 F
3 Attenzione Ogni istr3 può essere un blocco, nel qual caso deve iniziare con una parentesi graffa aperta { e terminare con una parentesi graffa chiusa }. Per esempio, se istr3= istr3.1; istr3.2; istr3.3; si deve scrivere for (istr1; cond; istr2) { istr3.1; istr3.2; istr3.3; }
4 Attenzione Anche istr1 e istr2 possono contenere più di un istruzione, ma in questo caso non servono le parentesi. Inoltre le istruzioni sono separate da virgole. Per esempio, possiamo scrivere for (i=1, j=5; i<10 && j<100; i++, j=i*j) istr1 cond istr2
5 Scrivere un programma che calcola la somma di cinque numeri interi immessi dall utente. SOLUZ 1) Usare 5 variabili distinte, una per ogni numero immesso, e poi sommare i loro valori... INEFFICIENTE e POCO GENERALE. SOLUZ 2) Scriviamo un ciclo for che ad ogni iterazione: - legge in input un numero, - lo memorizza nella variabile numero, - aggiorna il valore della variabile somma aggiungendo l ultimo numero letto.
6 (continua) Variabili: somma contiene la somma dei numeri letti fino a quel punto numero contiene l ultimo numero letto Invariante del ciclo: somma contiene la somma dei numeri letti fino a quel punto #include <stdio.h> int main ( ) { int i, somma, numero; somma = 0; for (i=1; i<=5; i++) { /* il corpo del ciclo for è un blocco */ printf ( Inserisci un intero: ); scanf ( %d, &numero); somma += numero; } /* somma = somma + numero */ printf ( Somma: %d\n, somma); }
7 Output Durante l esecuzione del programma l utente sarà chiamato a introdurre cinque numeri interi: Inserisci un intero: 32 Inserisci un intero: 111 Inserisci un intero: 2 Inserisci un intero: 77 Inserisci un intero: 13 Somma: 235
8 Scrivere un programma che calcola la somma di una sequenza di numeri immessi dall utente. Si assuma che la sequenza termini quando viene immesso il numero 0. #include <stdio.h> int main ( ) { int somma, numero; numero = 1; somma = 0; for ( ; numero!=0 ; ) { printf ( Inserisci un intero: ); scanf ( %d, &numero); somma += numero; } /* somma = somma + numero */ printf ( Somma: %d\n, somma); }
9 Output Durante l esecuzione del programma l utente sarà chiamato a introdurre una sequenza di numeri interi. L esecuzione termina quando viene inserito il numero 0. Inserisci un intero: 32 Inserisci un intero: 111 Inserisci un intero: 2 Inserisci un intero: 77 Inserisci un intero: 13 Inserisci un intero: 0 Somma: 235
10 Modifica il programma precedente in modo tale da non dover inizializzare la variabile numero prima dell esecuzione del ciclo for. Suggerimento: Usa il comando do-while in modo che la variabile numero venga inizializzata con il primo valore immesso dall utente.
11 Dire cosa fa il seguente frammento di codice. #include <stdio.h> int main ( ) { int i; for ( i=0; i<=100 ; i+=10 ) printf ( %d\n, i); } stampa
12 Dire cosa fa il seguente frammento di codice. #include <stdio.h> int main ( ) { int i; for ( i=5; i>=5 ; i++ ) printf ( %d\n, i); } stampa
13 Qual è il valore di i al termine dell esecuzione del ciclo for? #include <stdio.h> int main ( ) { int i; for ( i=1; i<1000 ; i+=100 ) printf ( %d\n, i); } Soluzione: i = 1001
14 Comando while while (cond) istruzione; Le istruzioni vengono eseguite nel seguente ordine: 1) se cond è vera vai al passo 2 altrimenti termina 2) esegui istruzione e ritorna al passo 1 Nota: se cond è falsa il ciclo non viene mai eseguito. Anche qui, istruzione può essere un blocco. T cond F istruzione
15 Scrivere un programma che calcola la somma di cinque numeri interi immessi dall utente. #include <stdio.h> int main ( ) { int i, somma, numero; somma = 0; i = 1; /* inizializzazione delle variabili somma e i */ while ( i<=5 ) { /* il corpo del ciclo while è un blocco */ printf ( Inserisci un intero: ); scanf ( %d, &numero); somma += numero; i++; } printf ( Somma: %d\n, somma); }
16 Si può inserire l incremento della variabile di controllo i del ciclo while all interno della condizione logica presente tra le parentesi rotonde. #include <stdio.h> int main ( ) { int i, somma, numero; somma = 0; i = 1; while ( i++<=5 ) { printf ( Inserisci un intero: ); scanf ( %d, &numero); somma += numero; } printf ( Somma: %d\n, somma); }
17 Si può anche inizializzare i a 5 e decrementare il valore di i ad ogni iterazione. La condizione diviene falsa quando i assume valore zero. #include <stdio.h> int main ( ) { int i, somma, numero; somma = 0; i = 5; while ( i-- ) { printf ( Inserisci un intero: ); scanf ( %d, &numero); somma += numero; } printf ( Somma: %d\n, somma); }
18 Scrivere un programma che calcola la somma e il massimo di una sequenza di numeri immessi dall utente corrispondenti alle spese mensili di una famiglia. Si assume che i numeri immessi siano tutti positivi, la sequenza termini quando viene immesso il numero 0, che non si possano immettere più di 12 numeri (corrispondenti a 12 mesi).
19 Soluzione #include <stdio.h> int main ( ) { int i, somma, spesa_mensile, max; i = 1; scanf ( %d, &spesa_mensile); max= spesa_mensile; somma = spesa_mensile; while (spesa_mensile!= 0 && i<12) { printf ( Inserisci spesa successiva: ); scanf ( %d, &spesa_mensile); if (spesa_mensile > max) //Invariante del ciclo: max = spesa_mensile; //max e somma contengono somma += spesa_mensile; //rispettivamente il massimo e i++; } //e la somma dei valori inseriti printf ( Spesa totale: %d\n, somma); printf ( Spesa massima: %d\n, max); }
20 Comando do-while do istruzione; while (cond) Le istruzioni vengono eseguite nel seguente ordine: 1) esegui istruzione 2) se cond è vera vai al passo 1 altrimenti termina T istruzione cond F Nota: se cond è falsa il ciclo viene eseguito 1 volta. Anche qui, istruzione può essere un blocco.
21 Attenzione Il comando do-while si usa quando si vuole che il corpo del ciclo venga eseguito almeno una volta.
22 Scrivere un programma che stampa su video n linee e m colonne costituite dal carattere +. #include <stdio.h> int main ( ) { int n, m, i, j; printf( Inserisci il numero di linee e colonne: \n ); scanf ( %d %d, &n, &m); for (i=1; i<=n; i++) { /* ciclo esterno: costruisce una riga printf( \n ); ripetilo n volte */ } for (j=1; j<=m; j++) /* ciclo interno: stampa un + printf( + ); ripetilo m volte */ }
23 Output Il programma produce il seguente output: Inserisci il numero di linee: 5 Inserisci il numero di colonne:
24 Scrivere un programma che legge un numero intero n e scrive i primi n numeri dispari. #include <stdio.h> int main ( ) { int i, n; printf( Inserisci il numero n: \n ); scanf ( %d, &n); for (i=0; i<n; i++) // Invariante del ciclo: printf ( %d, 2*i+1); // Alla fine dell i-esima iterazione ho // stampato i primi i numeri dispari printf ( \n ); }
25 Scrivere un programma che stampa gli interi positivi minori di 100 e divisibili sia per 6 che per 7. #include <stdio.h> int main ( ) { int i; for (i=0; i<100; i++) if (!(i%6) &&!(i%7)) printf ( %d \n, i); }
26 Scrivere un programma come prima usando il comando while. #include <stdio.h> int main ( ) { int i=0; while (i<100) { if (!(i%6) &&!(i%7)) printf ( %d \n, i); i++; } }
27 Scrivere un programma che legga da tastiera una sequenza di 0 e 1, terminata da un 2, calcoli la lunghezza della piu` lunga sottosequenza di 0, e la stampi. ESEMPIO: > 3. #include <stdio.h> int main ( ) { int bit; /* l'elemento della sequenza appena letto */ int cont = 0; /* lunghezza della sequenza corrente di zeri; inizialmente non abbiamo ancora letto nulla */ int maxlung = 0; /* massima lunghezza incontrata finora; inizialmente e` 0 */
28 printf("inserisci una sequenza di 0, 1 terminata da 2\n"); do { scanf("%d", &bit); if (bit == 0) { // e` stato letto un altro 0 cont++; // aggiorna la lunghezza della sequenza corrente if (cont > maxlung) // se necessario, aggiorna il massimo temporaneo maxlung = cont; } else // e` stato letto un 1 (o il 2 finale) cont = 0; // azzera la lunghezza della sequenza corrente } while (bit!= 2); // quando si legge 2 il ciclo termina printf("la piu` lunga sottosequenza di soli zeri e` lunga %d\n", maxlung); }
29 Scrivere un programma che legge una sequenza di caratteri (il carattere # termina la sequenza) per ciascun carattere letto stampa il relativo codice ASCII e, nel caso sia una lettera dell alfabeto minuscola, viene operata la trasformazione in lettera maiuscola.
30 #include <stdio.h> int main ( ) { char C, CM; printf ( Inserire un carattere - # per terminare il programma\n ); scanf ( %c, &C); while (C!= # ) { printf ( Il codice ASCII del carattere %c e %d\n, C, C); /* Se il carattere e una lettera minuscola */ if (C>= a && C<= z ) { /* La differenza a - A e lo scarto fra la rappresentazione ASCII delle lettere maiuscole e minuscole dell alfabeto */ CM = C - ( a - A ); printf ( La lettera maiuscola per %c e %c e il suo codice ASCII e %d\n, C, CM, CM); } printf ( Inserire un carattere - # per terminare il programma\n ); scanf ( %c, &C); } }
Input / Output, Espressioni Condizionali e Cicli
LIA - DEIS - Facoltà di Ingegneria - Università di Bologna Laboratorio di informatica LA Corso di laurea in Ingegneria Informatica - Anno Accademico 2007-2008 Input / Output, Espressioni Condizionali e
Laboratorio. Due. 1) Switch 2) Costrutti Iterazione (For, While, do while)
Laboratorio Due 1) Switch 2) Costrutti Iterazione (For, While, do while) GLI ARGOMENTI DI OGGI Istruzione switch I costrutti di iterazione (For, while, do while) Le funzioni (e ricorsione) Terza Esercitazione
Laboratorio di informatica Ingegneria meccanica
Laboratorio di informatica Ingegneria meccanica Esercitazione 6 7 novembre 2007 Correzione di un programma Un programma può contenere errori sintattici e/o errori logici. Gli errori sintattici vengono
Iterazione determinata e indeterminata
Iterazione determinata e indeterminata Le istruzioni iterative permettono di ripetere determinate azioni più volte: un numero di volte fissato = iterazione determinata Esempio: fai un giro del parco di
del Linguaggio C Istruzioni di iterazione
Istruzioni i Iterative ti del Linguaggio C Istruzioni di iterazione Le istruzioni di iterazione forniscono strutture di controllo che esprimono la necessità di ripetere una certa istruzione durante il
Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica
Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Dipartimento di Elettronica, Informazione e Bioingegneria Informatica B Sezione D Franchi Alessio Mauro,
Esercitazione 3. Espressioni booleane I comandi if-else e while
Esercitazione 3 Espressioni booleane I comandi if-else e while Esercizio Si consideri la seguente istruzione: if (C1) if (C2) S1; else S2; A quali delle seguenti interpretazioni corrisponde? if (C1) if
Lab 04 Programmazione Strutturata"
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 04 Programmazione Strutturata" Lab04 1 Valutazione in cortocircuito (1)" In C, le espressioni booleane sono valutate
Esercitazione 2. Espressioni booleane Il comando if-else
Esercitazione 2 Espressioni booleane Il comando if- Espressioni booleane L espressione (i==100) è un espressione booleana. La sua valutazione può restituire solo uno dei due valori booleani true = 1 (in
Le Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Le Strutture di controllo Del Linguaggio C Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni STRUTTURE DI CONTROLLO PRIMITIVE SEQUENZA SELEZIONE (o scelta logica) ITERAZIONE NON PRIMITIVE
Laboratorio di Informatica I
Struttura della lezione Lezione 3: Istruzioni ed operatori booleani. Vittorio Scarano Corso di Laurea in Informatica Università di Salerno Soluzioni agli esercizi Istruzioni (statement) semplici e di controllo
Errori frequenti Cicli iterativi Array. Cicli e array. Laboratorio di Programmazione I. Corso di Laurea in Informatica A.A.
Cicli e array Laboratorio di Programmazione I Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7 Lez. 8 - Introduzione all ambiente
PROGRAMMAZIONE: Le strutture di controllo
PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l
Laboratorio di informatica Ingegneria meccanica
C: costanti introdotte con #define Laboratorio di informatica Ingegneria meccanica Lezione 4 22 ottobre 2007 Forma: #define nome valore Effetto: ogni occorrenza successiva di nome sarà rimpiazzata con
Fondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono
20/10/2014 M. Nappi/FIL 1
FIL Lezione 4: Istruzioni Iterative. Michele Nappi mnappi@unisa.it biplab.unisa.it 20/10/2014 M. Nappi/FIL 1 La struttura di Iterazione while Struttura tt di iterazione i Il programmatore specifica un
Informatica 2 modulo C Massimo Callisto De Donato
Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Informatica 2 modulo C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE
Fondamenti di Informatica T1. Lab 03 Istruzioni. Lab03 1
Fondamenti di Informatica T1 Lab 03 Istruzioni Lab03 1 Esercizio 1 Realizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media. Lab03 2 #include main()
Esempio: quanto mi piace questo corso! qufuafantofo mifi pifiafacefe qufuefestofo coforsofo!
Esercizio 1 Scrivere un programma che acquisisca da tastiera una sequenza di caratteri terminata da! e riporti sul monitor una sequenza derivata dalla precedente secondo le regole dell alfabeto farfallino
Manualistica 3 Le strutture di controllo
Programmazione e Laboratorio di Programmazione Manualistica 3 Le strutture di controllo Programmazione e Laboratorio di Programmazione: Le strutture di controllo 1 Le strutture di controllo Strutture di
Strutture di Controllo Condizionali e Operatori Logici e Relazionali
Linguaggio C Strutture di Controllo Condizionali e Operatori Logici e Relazionali 1 Strutture di Controllo! Controllano il flusso di esecuzione di un programma Istruzioni di selezione: permettono di selezionare
Laboratorio di Informatica
Laboratorio di Informatica Ingegneria Meccanica Esercitazione 3, 23 ottobre 2007 versione 3 novembre 2007 Limiti per tipi int #include rende visibili le costanti simboliche SHRT_MIN, SHRT_MAX,
Strutture di Controllo Condizionali e Operatori Logici e Relazionali
Linguaggio C Strutture di Controllo Condizionali e Operatori Logici e Relazionali 1 Strutture di Controllo n Controllano il flusso di esecuzione di un programma Istruzioni di selezione: permettono di selezionare
Lo scopo. Il primo esperimento. Soluzione informale. Le variabili
Lo scopo 2 Il primo esperimento Si vuole scrivere un programma in linguaggio C che chieda all utente di introdurre da tastiera due numeri interi e visualizzi il valore della loro somma sul video Ver. 2.4
Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);
Un esempio per iniziare Il controllo del programma in C DD Cap.3 pp.91-130 /* calcolo di 8!*/ #include #define C 8 int main() int i=1; int fatt=1; while (i
ANALIZZIAMO NEI DETTAGLI GLI STATEMENTS DI SELEZIONE E DI RIPETIZIONE FORNITI DAL LINGUAGGIO C STATEMENT SEMPLICE STATEMENT COMPOSTO BLOCCO
ANALIZZIAMO NEI DETTAGLI GLI STATEMENTS DI SELEZIONE E DI RIPETIZIONE ORNITI DAL LINGUAGGIO C Premessa: STATEMENT SEMPLICE STATEMENT COMPOSTO BLOCCO Uno ement semplice termina con ; come, ad esempio: ressione;
Fondamenti di Informatica T1. Lab 03 Istruzioni. Lab03 1
Fondamenti di Informatica T1 Lab 03 Istruzioni Lab03 1 Esercizio 1 Realizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media. Lab03 2 scanf: STRINGA DI FORMATO
Esercizio 1" input tre numeri interi e stampi a video la loro somma e la media. n Realizzare un programma che legga da. Lab03 2
Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2011/2012 Lab 03 Istruzioni" Lab03 1 Esercizio
Strutture di Controllo Iterative: Istruzioni While e Do
Linguaggio C Strutture di Controllo Iterative: Istruzioni While e Do 1 Istruzioni iterative! Anche dette cicli! Prevedono l esecuzione ripetitiva di altre istruzioni (corpo del ciclo)! Ad ogni iterazione
Istruzioni di Controllo in C. Emilio Di Giacomo
Istruzioni di Controllo in C Emilio Di Giacomo Limite delle istruzioni viste L insieme delle istruzioni che abbiamo visto fino ad ora consiste per lo più di: dichiarazioni e assegnazioni di variabili espressioni
Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione
Fondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono
Linguaggio C. strutture di controllo: strutture iterative. Università degli Studi di Brescia. Docente: Massimiliano Giacomin
Linguaggio C strutture di controllo: strutture iterative Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Strutture iterative
INFORMATICA. Strutture iterative
INFORMATICA Strutture iterative Strutture iterative Si dice ciclo (loop) una sequenza di istruzioni che deve essere ripetuta più volte consecutivamente. Si consideri ad esempio il calcolo del fattoriale
6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
6 - Blocchi e cicli Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://pages.di.unipi.it/milazzo milazzo di.unipi.it
Programmazione C Massimo Callisto De Donato
Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE
TERZA ESPERIENZA DI LABORATORIO. Programmazione con controllo di flusso FOR e SWITCH
CORSO DI LABORATORIO DI INFORMATICA CORSO DI LAUREA IN SDM ANNO ACCADEMICO 2018-2019 Docente: R. Sparvoli Esercitazioni: R. Sparvoli, F. Palma TERZA ESPERIENZA DI LABORATORIO Programmazione con controllo
Manualistica 3 Le strutture di controllo
Programmazione e Laboratorio di Programmazione Manualistica 3 Le strutture di controllo Programmazione e Laboratorio di Programmazione: Le strutture di controllo 1 Le strutture di controllo Strutture di
Laboratorio di Informatica
Laboratorio di Informatica Ingegneria Meccanica Esercitazione 5, 6 novembre 2007 versione 10 novembre 2007 Da Esercitazione 3 (I) 5. Scrivere un programma che, acquisito da stdin un valore intero (int)
Fondamenti di Informatica
Fondamenti di Informatica AlgoBuild: Strutture iterative e selettive Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 AlgoBuild: Strutture iterative
Istruzioni di controllo
Istruzioni di controllo Le istruzioni in C Assegnazione Sequenza I/O Test Cicli Controllo = che cosa è la prossima cosa da fare La prossima cosa da fare è quella che segue La prossima cosa da fare dipende
STRUTTURE DI CONTROLLO DEL C++
STRUTTURE DI CONTROLLO DEL C++ Le istruzioni if e else Le istruzioni condizionali ci consentono di far eseguire in modo selettivo una singola riga di codice o una serie di righe di codice (che viene detto
Linguaggio C. strutture di controllo: strutture sequenziali e condizionali. Università degli Studi di Brescia. Docente: Massimiliano Giacomin
Linguaggio C strutture di controllo: strutture sequenziali e condizionali Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia
Fondamenti di Informatica
Fondamenti di Informatica AlgoBuild: Strutture selettive, iterative ed array Prof. Arcangelo Castiglione A.A. 2016/17 AlgoBuild : Strutture iterative e selettive OUTLINE Struttura selettiva Esempi Struttura
Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly
Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly Scrivere il codice ARM che implementi le specifiche richieste e quindi verificarne il comportamento usando il simulatore
Ing. Lorenzo Vismara
Ing. Lorenzo Vismara ! "# #!$#%&# '(!)&!*)&#*$# +!, +$-.(( #!((%&#, #!& %&) /$#01&! 0#( 3452 $ 6#( 1 2 &## #!7 #89): #;##( 1? )#&)< $9): #@82 #)AA)#&#&$( #7)& @B && ##@A&#C 7 $C#&7 @B A&#)@#7&#
ESERCIZI SU IF/WHILE. Esercizio 1) Legge due numeri e controlla se il primo è multiplo del secondo.
ESERCIZI SU IF/WHILE Esercizio 1) Legge due numeri e controlla se il primo è multiplo del secondo. #include void main () int m, n; printf("inserire il primo numero:\n"); scanf ("%d", &m); printf("inserire
ISTRUZIONI ISTRUZIONI SEMPLICI
ISTRUZIONI istruzioni azioni modifica permanente dello stato interno strutture di controllo ::= ::= ::=
LABORATORIO di INFORMATICA
Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto ESERCIZI - 1 http://www.diee.unica.it/giacinto/lab
ERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} }
ERRATA CORRIGE Pulizia del buffer di input: come fare? (1) Dopo aver richiamato getchar() per prelevare un carattere dal buffer di input, inseriamo una seconda chiamata a getchar(), senza assegnare il
Laboratorio di programmazione
Laboratorio di programmazione 9 novembre 2016 Sequenze di Collatz Considerate la seguente regola: dato un numero intero positivo n, se n è pari lo si divide per 2, se è dispari lo si moltiplica per 3 e
do { printf("inserisci due numeri reali:"); scanf("%f %f", &a, &b);
Fondamenti di Informatica T-1 modulo 2 Laboratorio 02 1 Obiettivi di questa esercitazione 1. Valutazione in cortocircuito i 2. If innestati 3. Switch 4. Cicli 5. Funzioni e Header File 2 Valutazione in
do { printf("inserisci due numeri reali:"); scanf("%f %f", &a, &b); while(b!=0 && a/b<0);
Obiettivi di questa esercitazione Fondamenti di Informatica T-1 modulo 2 Laboratorio 02 1. Valutazione in cortocircuito i 2. If innestati 3. Switch 4. Cicli 5. Funzioni e Header File 1 2 Valutazione in
PROGRAMMAZIONE: La selezione
PROGRAMMAZIONE: La selezione Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l altra, riga per
Fondamenti di Informatica A. A. 2018/19
Fondamenti di Informatica Prof. Marco Lombardi A. A. 2018/19 AlgoBuild: Strutture Iterative e Selettive OUTLINE Blocco condizionale (Struttura selettiva IF - IF/ELSE) Esempi Cicli a condizione iniziale
I cicli. Iterazioni Calcolo della media Istruzioni break e continue
I cicli Iterazioni Calcolo della media Istruzioni break e continue Ciclo while p Vero A while() ; Falso Esegue una istruzione mentre una condizione è verificata Programmazione
Introduzione al Linguaggio C
Introduzione al Linguaggio C Controllo di Flusso Daniele Pighin March 2009 Daniele Pighin Introduzione al Linguaggio C 1/19 Outline Introduzione Branching: if Il ciclo while Il ciclo for break e continue
La gestione dei caratteri in C
in C In C i caratteri sono gestiti mediante variabili di tipo char (interi a 8 bit) Ad ogni carattere corrisponde un codice numerico ASCII (American Standard Code for Information Interchange) Un esempio
Istruzioni di Controllo
Istruzioni di Controllo Programmazione strutturata Ricordiamo i concetti chiave: concatenazione o composizione BLOCCO istruzione condizionale SELEZIONE ramifica il flusso di controllo in base al valore
Lezione 5 e 6. Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza. Valentina Ciriani ( ) Laboratorio di programmazione
Lezione 5 e 6 - Concetto di blocco - Controllo del flusso di un programma - Costrutti per la scelta if e switch - Costrutti while e for - Operatori in C Fabio Scotti (2004-2009) Laboratorio di programmazione
IL COSTRUTTO ITERAZIONE
IL COSTRUTTO ITERAZIONE Il costrutto iterazione Consente di ripetere una operazione elementare o un blocco di operazioni. Tipologie di iterazione Iterazione definita Iterazione condizionata Tipologie di
Stringhe Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR
Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Fondamenti di Informatica Laurea in Ingegneria ivile e Ingegneria per l ambiente e il territorio Linguaggio : Le basi Stefano
Programmazione in Java (I modulo)
Programmazione in Java (I modulo) Lezione 7 Iterazioni nei programmi:definite e indefinite Tre costrutti: While Do...While For Esempi Istruzioni di iterazione Le istruzioni iterative permettono di ripetere
Le istruzioni cicliche o iterative: for e while
Le istruzioni cicliche o iterative: for e while Ciclo o iterazione: un gruppo di istruzioni che può essere ripetuto più volte. Supponiamo di avere a disposizione 10 raggi e di voler calcolare 10 circonferenze.
Le strutture di controllo in C++
Le strutture di controllo in C++ Docente: Ing. Edoardo Fusella Dipartimento di Ingegneria Elettrica e Tecnologie dell Informazione Via Claudio 21, 4 piano laboratorio SECLAB Università degli Studi di Napoli
Nuovi tipi di dato e. Alessandra Giordani Lunedì 26 marzo
Nuovi tipi di dato e costrutto condizionale Alessandra Giordani agiordani@disi.unitn.it Lunedì 26 marzo 2012 http://disi.unitn.it/~agiordani/ Tipi di dato fondamentali int e il tipo di dato che consente
Iterazione A. Ferrari
Iterazione A. Ferrari Iterazioni (cicli) L iterazione è una struttura che consente di ripetere più volte l esecuzione di un insieme di istruzioni. Due tipi di iterazione: iterazioni enumerative: consentono
Laboratorio di Informatica I
Struttura della lezione Lezione 7: Istruzioni ed Operatori Booleani Vittorio Scarano Corso di Laurea in Informatica Soluzioni agli esercizi Istruzioni (statement) semplici e di controllo Operatori relazionali
Istruzioni iterative. Istruzioni iterative
Istruzioni iterative Esempio: Leggere 5 interi, calcolarne la somma e stamparli. Variante non accettabile: 5 variabili, 5 istruzioni di lettura, 5... int i1, i2, i3, i4, i5; scanf("%d", &i1):... scanf("%d",
Informatica A (per gestionali) A.A. 2004/2005. Esercizi C. Strutture di controllo
Informatica A (per gestionali) A.A. 2004/2005 Esercizi C Strutture di controllo 1 Indice 1 Strutture di controllo...3 1.1 Multiplo...3 1.2 Massimo Comun Divisore...3 1.3 Valutazione triangolo...4 1.4 Calcolatrice...5
Laboratorio di Programmazione
Laboratorio di Programmazione (Laurea triennale in matematica) Lezione 3 Analisi dettagliata di un programma /* commento */ Possono estendersi su più linee apparire in qualsiasi parte del programma. Alternativamente
Elementi di Informatica A. A. 2016/2017
Elementi di Informatica A. A. 2016/2017 Ing. Nicola Amatucci Università degli studi di Napoli Federico II Scuola Politecnica e Delle Scienze di Base nicola.amatucci@unina.it Programmazione C++ Parte 1
ISTRUZIONI DI ITERAZIONE
CHAPTER 6 CICLI 1 ISTRUZIONI DI ITERAZIONE Le istruzioni di iterazione sono usate per realizzare I cicli. Un ciclo è una istruzione il cui compito è di eseguire ripetutamente qualche altra istruzione (il
Istruzioni. Una istruzione semplice è qualsiasi espressione seguita da un punto e virgola. Esempio x = 0; y = 1;/* due istruzioni */
Istruzioni Le istruzioni esprimono azioni che, una volta eseguite, comportano una modifica permanente dello stato interno del programma o del mondo circostante Le strutture di controllo permettono di aggregare
Programmare in C. Esempio: Algoritmo del Risveglio
MASTER Information Technology Excellence Road (I.T.E.R.) Programmare in C (strutture di controllo) Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1
Caratteri e stringhe
Caratteri e stringhe Il tipo char Variabili char Input/output di char Operazioni sui char Esercizio Quadrati di lettere 2 Il tipo char Variabili char I caratteri in C si memorizzano in variabili di tipo
5. Quinta esercitazione autoguidata: liste semplici
22 5. Quinta esercitazione autoguidata: liste semplici 5.1. Liste rappresentate mediante strutture e puntatori (LISTE1.C, LISTE2.C) Scrivere un programma che - costruisce una lista di k interi (con k letto
Realizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media.
Esercizio 1 Realizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media. #include Esercizio 1 - Soluzione int main() int num1, num2, num3, somma; float
Strutture di iterazione
Strutture di iterazione 1. Leggi i programmi qui sotto e disegna le tabelle di traccia nelle situazioni seguenti: a. Nel primo e nel secondo programma viene inserito da tastiera il valore 2; b. Nel primo
Linguaggio C Informatica Grafica
Linguaggio C Informatica Grafica Corsi di Informatica Grafica Prof. Manuel Roveri Dipartimento di Elettronica e Informazione roveri@elet.polimi.it Linguaggio C Breve storia Struttura di un programma Variabili
Variabili e input/ Alessandra Giordani Lunedì 18 marzo
Variabili e input/ output da tastiera Alessandra Giordani agiordani@disi.unitn.it Lunedì 18 marzo 2013 http://disi.unitn.it/~agiordani/ Es. compilazione helloworld.c 2 Variabili e valori Una variabile
Esercitazione 11. Liste semplici
Esercitazione 11 Liste semplici Liste semplici (o lineari) Una lista semplice (o lineare) è una successione di elementi omogenei che occupano in memoria una posizione qualsiasi. Ciascun elemento contiene
Dati due punti sul piano calcolare la loro distanza
Introduzione al C Primo esempio in C Dati due punti sul piano calcolare la loro distanza Soluzione: la distanza fra due punti si calcola secondo il teorema di Pitagora, con la formula: y Distanza = (lato12
Esercitazione 6. Array
Esercitazione 6 Array Arrays Array (o tabella o vettore): è una variabile strutturata in cui è possibile memorizzare un numero fissato di valori tutti dello stesso tipo. Esempio int a[6]; /* dichiarazione
C: panoramica. Violetta Lonati
C: panoramica Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica AA 2009/2010 Violetta Lonati
Primo programma in C
Primo programma in C Struttura minima di un file C Applicazioni C in modo console Struttura del programma Commenti Direttive #include Definizione di variabili Corpo del main 2 Struttura minima di un file
Algoritmi e basi del C Struttura di un programma
Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 11 Marzo 2014 Informazione: dato + significato Che giorno è oggi? 14 Marzo o anche
Programmazione di base
Fondamenti di Informatica Quarto Appello 016-17 4 luglio 017 Rispondi alle domande negli appositi spazi. I punti assegnati per ogni domanda sono indicati nel riquadro a lato. L'esame contiene 10 domande,
Esempi comparati while, do...while
Esempi comparati while, do...while Algoritmo. - inizializza Somma a zero - finchè la risposta è "continuazione" - visualizza messaggio - acquisisci un numero I - aggiungi I a Somma - domanda se continuare
Funzioni di Ingresso e Uscita
Funzioni di Ingresso e Uscita In C, l ingresso e l uscita avviene tramite chiamate (attivazioni) di funzioni (sottoprogrammi) disponibili nella Standard Library Standard Library: collezione di funzioni
C array. Problema: scrivere un programma che, ricevuto in input un intero n ed n interi positivi, li stampi in ordine inverso.
Problema: scrivere un programma che, ricevuto in input un intero n ed n interi positivi, li stampi in ordine inverso. Non sappiamo a priori quante variabili dobbiamo definire per contenere gli interi.
Strutture dati. Operatori di incremento e decremento. Strutture di dati. Strutture di dati. ++ e -- Esempi. Vettori e matrici.
Operatori di incremento e decremento ++ e -- Esempi y=x++ il contenuto della variabile x viene inizialmente usata per l assegnazione y, e solo dopo incrementata y=--x il contenuto della variabile x viene
Università degli Studi di Milano
Università degli Studi di Milano Corso di Laurea in Sicurezza dei Sistemi e delle Reti Informatiche Lezione 3 Input/Output elementare. Operatori, espressioni e istruzioni FABIO SCOTTI Laboratorio di programmazione