Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012"

Transcript

1 Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012

2 Sommario Introduzione alla sintassi C++ Operatori Conversione di tipo Istruzioni di controllo Esercizi 16/04/2012 2

3 Operatori sui bit Il C++ permette, a differenza da altri linguaggi, di operare sulle variabili intere a livello dei bit. L'operatore binario >> produce lo scorrimento a destra (right-shift) dei bit dell operando di sinistra( left-operand) in quantità pari all operando di destra ( rightoperand). In pratica si esegue una divisione intera (con divisore uguale a una potenza di 2) Es. a >> n equivale a a / 2 n Dalla sinistra entrano cifre binarie 0 se il numero a è positivo, oppure cifre binarie 1 se il numero a è negativo (a causa della notazione a complemento a 2 dei numeri negativi). L'operatore binario << produce lo scorrimento a sinistra (left-shift) dei bit dell operando di sinistra ( left-operand), in quantità pari al right-operand. In pratica si esegue una moltiplicazione per una potenza di 2 Es. a << n equivale a a * 2 n Dalla destra entrano sempre cifre binarie 0. 16/04/2012 3

4 Operatori sui bit Gli operatori binari &,, e ^ eseguono operazioni logiche bit a bit fra i due operandi, e precisamente: & esegue l'and fra i corrispondenti bit dei due operandi esegue l'or fra i corrispondenti bit dei due operandi ^esegue l'or esclusivo (XOR) fra i corrispondenti bit dei due operandi L'operatore binario & esegue l'and logico fra due bit a,b: a & b risultato: true (1) se entrambi a e b sono true; altrimenti: false (0) L'operatore binario esegue l'or logico fra due bit a,b: a b risultato: false (0) se entrambi a e b sono false; altrimenti: true (1) L'operatore binario ^ esegue l'or esclusivo logico fra due bit a,b: a ^b risultato: true (1) se a e b sono diversi; altrimenti: false (0) L'operatore unario ~ inverte i bit dell'operando (trasforma 0 in 1 e 1 in 0). 16/04/2012 4

5 Operatori sui bit Gli operatori binari &,, e ^ eseguono operazioni logiche bit a bit fra i due operandi, e precisamente: &esegue l'and fra i corrispondenti bit dei due operandi esegue l'or fra i corrispondenti bit dei due operandi ^esegue l'or esclusivo (XOR) fra i corrispondenti bit dei due operandi Es., date due variabili char a e b i cui valori sono, in notazione binaria: a= (77) b= (58) i risultati delle tre operazioni sono rispettivamente: a & b= (8) a b= (127) a ^ b= (119) L'operatore unario ~ inverte i bit dell'operando (trasforma 0 in 1 e 1 in 0). 16/04/2012 5

6 Operatori sui bit a= (77) b= (58) i risultati delle tre operazioni sono rispettivamente: a & b= (8) a b= (127) a ^ b= (119) L'operatore unario ~ inverte i bit dell'operando (trasforma 0 in 1 e 1 in 0). #include <iostream> using namespace std; int main(){ int c1, a=77, b=58; int m = a & b; cout <<endl; cout << "a & b = " <<m << endl; cout << "a b = " <<(a b) << endl; cout << "a ^ b = " <<(a ^ b) << endl; return 0;} 16/04/2012 6

7 Operatori sui bit a= (77) b= (58) i risultati delle tre operazioni sono rispettivamente: a & b= (8) a b= (127) a ^ b= (119) L'operatore unario ~ inverte i bit dell'operando (trasforma 0 in 1 e 1 in 0). #include <iostream> using namespace std; int main(){ int c1, a=77, b=58; int m = a & b; cout <<endl; cout << "a & b = " <<m << endl; cout << "a b = " <<(a b) << endl; cout << "a ^ b = " <<(a ^ b) << endl; return 0;} 16/04/2012 7

8 Operatori binari in notazione compatta Data l'espressione: a = a <op> b dove a è una variabile, op è un operatore (matematico o a livello del bit), b è un'espressione qualsiasi, questa può essere riscritta in notazione compatta a <op> =b Es. A=A*B equivale a A*=B La notazione compatta è conveniente soprattutto quando il nome delle variabili è lungo! 16/04/2012 8

9 Operatori relazionali Gli operatori binari relazionali sono: > >= < <= ==!= Questi operatori eseguono il confronto fra i valori dei due operandi (che possono essere di qualsiasi tipo nativo) e restituiscono un valore booleano: a > b restituisce true se a é maggiore di b a >= b restituisce true se a é maggiore o uguale a b a < b restituisce true se a é minore di b a <= b restituisce true se a é minore o uguale a b a == b restituisce true se a é uguale a b a!= b restituisce true se a é diverso da b Esempi: bool b = 7 > 3; (in b viene memorizzato true) bool c = 7 < 3; (in c viene memorizzato false) 9

10 Operatori logici: &&! Questi operatori agiscono su operandi booleani e restituiscono un valore booleano: L'operatore binario && esegue l'and logico fra gli operandi: a && b risultato: true se entrambi a e b sono true; altrimenti: false L'operatore binario esegue l'or logico fra gli operandi: a b risultato: false se entrambi a e b sono false; altrimenti: true L'operatore unario! esegue il NOT logico dell'operando:!a risultato: true se a é false o viceversa Si noti la differenza fra gli operatori logici && e e gli operatori di confronto bit a bit & e Es: 5 && 2 restituisce true in quanto entrambi gli operandi sono true (ogni intero diverso da zero è convertito in true) 5 & 2 restituisce 0 (e quindi false se convertito in booleano) in quanto i bit corrispondenti sono tutti diversi 10

11 Operatori di incremento e decremento Gli operatori unari di incremento ++ o decremento -- fanno aumentare o diminuire di un'unità il valore dell'operando (che deve essere di un qualunque tipo base). Es. a++; equivale a a= a+1; L'operatore può seguire (postfisso) l operando es. a++ o precedere (prefisso) l'operando es. ++a Nel caso di operando prefisso l'incremento (o il decremento) viene eseguito prima che la variabile sia utilizzata in una eventuale espressione in cui compare. Nel caso di operando (postfisso) avviene il contrario (prima viene usata la variabile nell epressione e poi viene eseguito l incremento o il decremento). Es: int a, b, c=5 ; a = c++; b = ++c; alla fine di queste operazioni si trovano, nella variabili a, b e c, rispettivamente i valori 5, 7 e 7. Gli operatori di incremento (o decremento) consentono di ridurre il numero di istruzioni. 11

12 Esercizio Determinare il valore assunto da c2 immaginando di effettuate le seguenti assegnazioni (si assuma che tutte le variabili siano state precedentemente dichiarate di tipo int): a=.; c1=.; c=.; c2 = (a-30+c1*(c++)/-(c)); Determinare il valore assunto da c2 immaginando effettuaee le seguenti assegnazioni (si assuma che tutte le variabili siano state precedentemente dichiarate di tipo int): a=.; b= ;c1=.; c2=.;c=.; c2 = (a-30+c1*(c2+b))/(c1*5); 12

13 Conversioni di tipo implicite Nelle assegnazioni, il tipo dell operando di destra viene sempre trasformato implicitamente nel tipo dell operando di sinistra, in genere se se la conversione implica perdita di dati (loss of data ) es trasformando un tipo più complesso in un tipo più semplice ) viene generato un messaggio warning in fase di compilazione. 13

14 Conversioni di tipo esplicite Quando si vuole ottenere una conversione di tipo che non verrebbe eseguita implicitamente, bisogna usare l'operatore binario di casting (o conversione esplicita), che consiste nell'indicazione del nuovo tipo fra parentesi davanti al nome della variabile da trasformare. Es. se la variabile n é di tipo int, l'espressione (float)n trasforma il contenuto di n da int in float. 14

15 #include <iostream> using namespace std; int main(){ cout << "Inizio" <<endl; int a=0,b=0; float q=0; /* Definisco una variabile di tipo float */ cout<<"\ndammi il primo numero: "; cin>>a; cout<<"\ndammi il secondo numero: "; cin>>b; q=(float) a/b; cout<<a<<": "<<b<<" = "<<q<<"\n"; return 0;} Visto che è richiesto di calcolare un quoziente (si prevede di ottenere come risultato un reale) dichiareremo la variabile q di tipo float. float q=0; Dato che entrambi gli operandi sono interi non basta scrivere q=a/b; in quanto essendo gli operandi dello stesso tipo (int) anche il risultato sarà un intero! Per ottenere il risultato corretto è necessario fare un casting (conversione di tipo esplicita) ovvero convertire esplicitamente a float almeno uno dei due operandi (in questo caso a), quindi scriviamo: q=(float) a/b; 15

16 Istruzioni di controllo Si chiamano istruzioni di controllo quelle istruzioni che modificano l'esecuzione sequenziale di un programma. 16

17 Istruzione di controllo if if (condizione) istruzione; ( condizione é un'espressione logica) Se la condizione é true il programma esegue l'istruzione, altrimenti passa direttamente all'istruzione successiva Se le istruzioni da eseguire in base alla condizione sono più di una si raggruppano le istruzioni fra parentesi graffe: if (condizione) {... blocco di istruzioni... }; 17

18 Istruzione di controllo if..else Nel caso di due scelte alternative, all'istruzione if si può associare l'istruzione else : if (condizione) istruzionea; else istruzioneb; se la condizione é true il programma esegue l'istruzionea, altrimenti esegue l'istruzioneb Se le istruzioni da eseguire in base alla condizione sono più di una si raggruppano le istruzioni fra parentesi graffe: if (condizione) {... blocco di istruzioni... } e analogamente: else {... blocco di istruzioni... }. 18

19 #include <iostream> using namespace std; int main(){ int num; cout << "Dammi un numero: "; cin >> num; if ( num > 100 num < -100) cout << Numero fuori range!\n"; if ( num % 2 ) cout << num << " e' dispari\n"; else cout << num << " e' pari\n"; if ( num < 0 ) {cout << num << " sara' cambiato di segno\n"; num = -num; cout << "Numero risultante: " << num << "\n"; } else cout << num << " e' positivo\n"; cout << "\n\n\n\n"; return 0;} Istruzione di controllo if esempio 19

20 #include <iostream> using namespace std; int main(){ int num; cout << "Dammi un numero: "; cin >> num; if ( num > 100 num < -100) cout << Numero fuori range!\n"; if ( num % 2 ) cout << num << " e' dispari\n"; else cout << num << " e' pari\n"; if ( num < 0 ) {cout << num << " sara' cambiato di segno\n"; num = -num; cout << "Numero risultante: " << num << "\n"; } else cout << num << " e' positivo\n"; cout << "\n\n\n\n"; return 0;} Istruzione di controllo if esempio 20

21 Istruzione di controllo if..annidate Se l'istruzione controllata da un if consiste a sua volta in un altro if (sono possibili più istruzioni if annidate), ogni eventuale else si riferisce sempre all'if immediatamente superiore (in assenza di parentesi graffe). Comuque per essere sicuri di ottenere quello che si vuole, conviene sempre mettere le parentesi graffe, anche se sono ridondanti. Es. if (cond1) { if (cond2) istr2a; else istr2b ;}; else istr1b 21

22 #include <iostream> using namespace std; int main(){ int a=1; /* variabile if nidificato*/ cout<<"inserire a"; cin>>a; if (a>10) {cout<<a<<" maggiore di 10\n";} else if (a<0) {cout<<a<<" negativo\n";} else cout<<a<<" non mi interessa\n"; cout<<a<<" inserimeto effettuato\n"; return 0;}

23 #include <iostream> using namespace std; int main(){ int a=1; /* variabile if nidificato*/ cout<<"inserire a"; cin>>a; if (a>10) {cout<<a<<" maggiore di 10\n";} else if (a<0) {cout<<a<<" negativo\n";} else cout<<a<<" non mi interessa\n"; cout<<a<<" inserimeto effettuato\n"; return 0;}

24 Istruzione di controllo while while (condizione) istruzione; ( condizione é un'espressione logica) Il programma esegue ripetutamente l istruzione finchè la condizione é true e passa all'istruzione successiva appena la condizione diventa false. Se le istruzioni da eseguire in base alla condizione sono più di una, bisogna raggruppare le istruzioni fra parentesi graffe while (condizione) {... blocco di istruzioni... } Ovviamente, affinché il loop (ciclo) non si ripeta all'infinito, tra le istruzioni una deve modificare qualche parametro della condizione. La condizione viene verificata all'inizio di ogni iterazione del ciclo: é pertanto possibile, se la condizione é già inizialmente false, che il ciclo non venga eseguito neppure una volta. NSi noti che è ammessa anche la forma: while (condizione) ; //loop infinito!!! 24

25 Istruzione di controllo while #include <iostream> using namespace std; int main(){ int c1; cout<<"inserire C1>10 \n"; cin>>c1; while (c1<=10) { cout<<"valore di C1 non valido\n"; cout<<"inserire il valore di C1>10 \n"; cin>>c1; }; cout<<"il valore di C1 e' "<<c1<<"\n"; return 0;} 25

26 Istruzione di controllo while #include <iostream> using namespace std; int main(){ int c1; cout<<"inserire C1>10 \n"; cin>>c1; while (c1<=10) { cout<<"valore di C1 non valido\n"; cout<<"inserire il valore di C1>10 \n"; cin>>c1; }; cout<<"il valore di C1 e' "<<c1<<"\n"; return 0;} 26

27 Istruzione di controllo do..while do {... blocco di istruzioni... } while ( condizione ) ; (condizione é un'espressione logica) funziona come l'istruzione while, con la differenza che la condizione é verificata alla fine di ogni iterazione e pertanto il ciclo é sempre eseguito almeno una volta. Se la condizione é true il programma torna all'inizio del ciclo ed esegue una nuova iterazione, se é false, passa all'istruzione successiva. Le parentesi graffe sono obbligatorie, anche se il blocco è costituito da una sola istruzione. 27

28 Iterazione do while #include <iostream> using namespace std; int main(){ int c1; do { cout<<"inserire il valore di C1>10 \n"; cin>>c1; } while (c1<=10); cout<<"valore di C1= "<<c1; return 0;}

29 Iterazione do while #include <iostream> using namespace std; int main(){ int c1; do { cout<<"inserire il valore di C1>10 \n"; cin>>c1; } while (c1<=10); cout<<"valore di C1= "<<c1; return 0;}

30 Istruzione di controllo for for (inizializzazione; condizione; modifica) istruzione; inizializzazione é un'espressione eseguita solo la prima volta, condizione é un'espressione logica, modifica é un'espressione eseguita alla fine di ogni iterazione) il programma esegue ripetutamente l'istruzione finchè la condizione é true e passa all'istruzione successiva appena la condizione diventa false. Se le istruzioni da eseguire in base alla condizione sono più di una, bisogna creare un ambito, cioè raggruppare le istruzioni fra parentesi graffe: for (inizializzazione; condizione; modifica) {... blocco di istruzioni... } L'istruzione for é simile all'istruzione while, con le differenze che in while l'inizializzazione é impostata precedentemente e la modifica é eseguita all'interno del blocco di istruzioni del ciclo. Come in while, anche in for la condizione viene verificata all'inizio di ogni iterazione. 30

31 Istruzione di controllo for for (inizializzazione; condizione; modifica) {... blocco di istruzioni... } #include <iostream> using namespace std; int main(){ {int x; for(x=1; x<=100; x++) cout<<x<<" "; return 0;} } 31

32 Istruzione di controllo for for (inizializzazione; condizione; modifica) {... blocco di istruzioni... } #include <iostream> using namespace std; int main(){ {int x; for(x=1; x<=100; x++) cout<<x<<" "; return 0;} } 32

33 Istruzione di controllo continue e break Le istruzioni continue e break sono utilizzate all'interno di un blocco di istruzioni controllate da while, do... while o for. L'istruzione continue interrompe l'iterazione corrente del ciclo: il programma riprende dall'inizio dell'iterazione successiva, previa esecuzione della modifica (nei cicli for) e verifica della condizione (in tutti i tipi di cicli). L'istruzione break interrompe completamente un ciclo: il programma riprende dalla prima istruzione successiva a quelle del ciclo. Nel caso di più cicli innestati, le istruzioni continue e break hanno effetto esclusivamente sul ciclo a cui appartengono e non su quelli più esterni. 33

34 Istruzione di controllo switch switch( espressione ) { [case costante1 : [ blocco di istruzioni 1]] [case costante2 : [ blocco di istruzioni 2]]... [default : [blocco di istruzioni]] } L'istruzione switch confronta il valore dell'espressione (che deve restituire un risultato intero) con le diverse costanti (dello stesso tipo dell'espressione) e, appena ne trova una uguale, esegue tutte le istruzioni da quel punto in poi (anche se le istruzioni relative allo stesso case sono più d'una, non è necessario inserirle fra parentesi graffe). Se nessuna costante é uguale al valore dell'espressione, esegue, se esistono, le istruzioni dopo default: Normalmente ciascun blocco case termina con l'istruzione break (per ottenere che le istruzioni selezionate siano eseguite in alternativa alle altre) 34

35 return 0;} Istruzione di controllo switch #include <iostream> using namespace std; int main(){ int scelta=1; /* variabile switch */ while(scelta!=0) {cout<<"\n Scegli un intero<3 e 0 per terminare:\n\n"; cin>>scelta; switch(scelta) { case 1: {cout<<"1";cout<<"1";break;} case 2: {cout<<"2";cout<<"2";break;} case 0: {cout<<"fine";break;} default: {cout<<"errore";break;} } ; };

36 return 0;} Istruzione di controllo switch #include <iostream> using namespace std; int main(){ int scelta=1; /* variabile switch */ while(scelta!=0) {cout<<"\n Scegli un intero<3 e 0 per terminare:\n\n"; cin>>scelta; switch(scelta) { case 1: {cout<<"1";cout<<"1";break;} case 2: {cout<<"2";cout<<"2";break;} case 0: {cout<<"fine";break;} default: {cout<<"errore";break;} } ; };

37 Istruzione di controllo switch #include <iostream> using namespace std; int main(){ {char lettera; const char voca ='A'; short vocali=0, consonanti=0; for (lettera='a'; lettera<='z'; lettera++) switch (lettera) {case voca :case 'E' :case 'I' :case 'O' :case 'U' :vocali++;break; default:consonanti++;} cout << "Vocali: " << vocali << " Consonanti: " << consonanti << "\n\n\n\n\n" ; return 0;} } 37

38 Istruzione di controllo switch #include <iostream> using namespace std; int main(){ {char lettera; const char voca ='A'; short vocali=0, consonanti=0; for (lettera='a'; lettera<='z'; lettera++) switch (lettera) {case voca :case 'E' :case 'I' :case 'O' :case 'U' :vocali++;break; default:consonanti++;} cout << "Vocali: " << vocali << " Consonanti: " << consonanti << "\n\n\n\n\n" ; return 0;} } 38

39 Esercizio 1 Dato un numero n inserito da tastiera, stampare a video, il numero precedente ed il numero successivo ad n. Esempio: Numero inserito da tastiera 7, numeri da visualizzare 6 e 8 16/04/

40 Esercizio 2 Inizializzare da input due variabili a e b, scambiare il contenuto delle stesse e visualizzare a video i valori finali delle due variabili. Esempio: Immettere da tastiera a=10 b=5 alla fine dell esecuzione del programma si deve avere a=5 b=10. 16/04/

41 Esercizio 3 Inserire da tastiera il prezzo di un dato prodotto e la percentuale di sconto da applicare. Visualizzare il prezzo scontato. Es. Prezzo 100, percentuale 10, prezzo scontato da visualizzare /04/

42 Esercizio 4 Dati due numeri a e b inseriti da tastiera, visualizzare il risultato della loro divisione. Attenzione: se il divisore è 0 visualizzare un messaggio a video altrimenti calcolare la divisione. 16/04/

43 Esercizio 5 Scriver un programma che dopo aver letto un intero positivo n (<5) da tastiera legge n numeri inseriti da tastiera e stampa la loro media. versione1 : programma che non utilizza le istruzioni cicliche versione2 : programma che utilizza for versione3 : programma che utilizza while versione4 : programma che utilizza do..while 16/04/

Qualsiasi programma in C++ segue lo schema:

Qualsiasi programma in C++ segue lo schema: Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni

Dettagli

Lezione 5 e 6. Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza. Valentina Ciriani ( ) Laboratorio di programmazione

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

Dettagli

Unità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso

Unità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso Unità Didattica 2 Linguaggio C Espressioni, Operatori e Strutture linguistiche per il controllo del flusso 1 Espressioni e assegnazioni Le espressioni sono definite dalla grammatica: espressione = variabile

Dettagli

Fondamenti di programmazione parte 2. Elementi di informatica IGLP

Fondamenti di programmazione parte 2. Elementi di informatica IGLP Fondamenti di programmazione parte 2 Elementi di informatica IGLP Questo insieme di trasparenze è stato ideato e realizzato dai ricercatori e professori del Dipartimento di Informatica e Sistemistica dell

Dettagli

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 8 14/11/2013

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 8 14/11/2013 Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 8 14/11/2013 Original work Copyright Sara Migliorini, University of Verona Modifications Copyright Damiano Macedonio, University

Dettagli

Elementi di Informatica A. A. 2016/2017

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

Dettagli

Laboratorio di Informatica I

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

Dettagli

Il C nel C++ Struttura di un linguaggio. regole per la definizione i simboli. regole per la composizione dei simboli

Il C nel C++ Struttura di un linguaggio. regole per la definizione i simboli. regole per la composizione dei simboli Il C nel C++ Struttura di un linguaggio Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli

Struttura di un linguaggio

Struttura di un linguaggio Il C nel C++ Struttura di un linguaggio Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli

Laboratorio di Programmazione e Calcolo

Laboratorio di Programmazione e Calcolo UNIVERSITA DEGLI STUDI ROMA TRE DIPARTIMENTO DI FISICA E. AMALDI Laboratorio di Programmazione e Calcolo 6 crediti a cura di Severino Bussino Anno Accademico 2018-19 0) Struttura del Corso 1) Trattamento

Dettagli

Nel seguito, istruzione1 e istruzione2 possono essere un blocco di codice { }, cioè più istruzioni

Nel seguito, istruzione1 e istruzione2 possono essere un blocco di codice { }, cioè più istruzioni INTRODUZIONE A C++ Nel seguito, istruzione1 e istruzione2 possono essere un blocco di codice, cioè più istruzioni Istruzione - Esempi Significato int a; float f; double d; char c; int x=0; variabile =

Dettagli

C espressioni condizionali

C espressioni condizionali C espressioni condizionali Esiste un particolare operatore, detto operatore condizionale, che rappresenta un istruzione if else. estremamente compattata?: Supponiamo di voler inserire nella variabile intera

Dettagli

Istruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Istruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico

Dettagli

Cast implicito. Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto. byte short int long float double

Cast implicito. Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto. byte short int long float double Il cast Cast implicito Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto Per esempio: byte short int long float double int x = 10; float f; f = x; Il valore di

Dettagli

Fondamenti di Programmazione. Strutture di controllo

Fondamenti di Programmazione. Strutture di controllo Fondamenti di Programmazione Strutture di controllo 1! Controllo del flusso! n Flusso di esecuzione: ordine in cui le istruzioni di un programma sono eseguite! n Salvo contrordini, è in sequenza! n Due

Dettagli

PROGRAMMAZIONE: Le strutture di controllo

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

Dettagli

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave

Dettagli

L AMBIENTE CODE BLOCKS E L IO

L AMBIENTE CODE BLOCKS E L IO L AMBIENTE CODE BLOCKS E L IO Il primo programma in C++ #include using namespace std; main() { cout

Dettagli

Tipi strutturati - struct

Tipi strutturati - struct Fondamenti di Programmazione A Appunti per le lezioni Gianfranco Rossi Tipi strutturati - struct Struttura dati (concreta) struct: sequenza di n elementi (n 0), rispettivamente di tipo t1,,tn (non necessariamente

Dettagli

Indice. Ordine di valutazione. Espressioni in C++ Le espressioni in C++ (CAP 4) Alberto Garfagnini e Marco Mazzocco A.A. 2014/ * 20 / 2

Indice. Ordine di valutazione. Espressioni in C++ Le espressioni in C++ (CAP 4) Alberto Garfagnini e Marco Mazzocco A.A. 2014/ * 20 / 2 Le espressioni in C++ (CAP 4) Indice Le espressioni in C++ : precedenze e associatività degli operatori Alberto Garfagnini e Marco Mazzocco Università degli studi di Padova A.A. 2014/2015 gli operatori

Dettagli

Corso di Fondamenti di Informatica

Corso di Fondamenti di Informatica Corso di Fondamenti di Informatica Le classi di istruzioni in C++ 1 Le classi di istruzioni in C++ SEQUENZIALI Statement semplice Statement composto CONDIZIONALI if < expr.> else switch case

Dettagli

STRUTTURE DI CONTROLLO DEL C++

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

Dettagli

Università degli Studi di Milano

Università degli Studi di Milano Università degli Studi di Milano Corso di Laurea in Sicurezza dei Sistemi e delle Reti Informatiche Lezione 5 Controllo del flusso del programma FABIO SCOTTI Indice 1. CONCETTO DI BLOCCO IN C...3 2. DUE

Dettagli

Le istruzioni cicliche o iterative: for e while

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.

Dettagli

Linguaggio C: Espressioni

Linguaggio C: Espressioni Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti prof. Mirko Viroli, Università

Dettagli

Le strutture di controllo in C++

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

Dettagli

I cicli. Iterazioni Calcolo della media Istruzioni break e continue

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

Dettagli

Istruzioni semplici e strutturate

Istruzioni semplici e strutturate Consorzio NETTUNO Corso di Fondamenti di Informatica I secondo giorno di stage Istruzioni semplici e strutturate Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II

Dettagli

Il C nel C++ Struttura di un linguaggio. Elementi lessicali. Spazi. Livello lessicale: Livello sintattico: Livello semantico:

Il C nel C++ Struttura di un linguaggio. Elementi lessicali. Spazi. Livello lessicale: Livello sintattico: Livello semantico: Struttura di un linguaggio Il C nel C++ Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli

C istruzione di assegnazione

C istruzione di assegnazione C istruzione di assegnazione Forma ntattica della istruzione di assegnazione: variabile = espresone l-value r-value In esecuzione il computer valuta l espresone ed il suo valore è assegnato alla variabile

Dettagli

Corso di Fondamenti di Informatica Classi di istruzioni 2

Corso di Fondamenti di Informatica Classi di istruzioni 2 Corso di Informatica Classi di istruzioni 2 Anno Accademico 2010/2011 Francesco Tortorella Strutture di controllo Caratteristica essenziale degli algoritmi è la possibilità di decidere le operazioni da

Dettagli

Istruzioni di Controllo in C. Emilio Di Giacomo

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

Dettagli

For e do. Unità 4. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

For e do. Unità 4. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico

Dettagli

L AMBIENTE CODE BLOCKS E L IO

L AMBIENTE CODE BLOCKS E L IO L AMBIENTE CODE BLOCKS E L IO Il primo programma #include main() { printf("ciao Mondo!"); } Il file deve essere salvato con estensione.c Il primo programma in C++ #include using

Dettagli

Strutture di Controllo Iterative: Istruzione FOR

Strutture di Controllo Iterative: Istruzione FOR Linguaggio C Strutture di Controllo Iterative: Istruzione FOR 1 Istruzioni iterative! Anche dette cicli! Prevedono l esecuzione ripetitiva di altre istruzioni (corpo del ciclo)! Ad ogni iterazione del

Dettagli

Istruzioni di Controllo

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

Dettagli

Strutture di Controllo Condizionali e Operatori Logici e Relazionali

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

Dettagli

Programmazione C Massimo Callisto De Donato

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

Dettagli

Indice. I costrutti decisionali I cicli

Indice. I costrutti decisionali I cicli Sintassi II Parte Indice I costrutti decisionali I cicli Il costrutto if/else Il costrutto if consente di svolgere una o più operazioni se una particolare condizione (enunciata con un espressione booleana)

Dettagli

Informatica 2 modulo C Massimo Callisto De Donato

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

Dettagli

if else Fondamenti di Informatica (Modulo B) !""#$ % ( #if else ) " *+ #switch if (Condizione) Istruzione

if else Fondamenti di Informatica (Modulo B) !#$ % ( #if else )  *+ #switch if (Condizione) Istruzione #$ % '' # ( #if else ) *+ #switch 50 if else * if * # if (Condizione) Istruzione Condizione bool Istruzione ( Condizione true + Istruzione ( Condizione false + Istruzione +, -+.// x.//# if (x == 100) if

Dettagli

Laboratorio di informatica Ingegneria meccanica

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

Dettagli

del Linguaggio C Istruzioni di iterazione

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

Dettagli

Linguaggio C. Tipi predefiniti e operatori. Università degli Studi di Brescia. Docente: Massimiliano Giacomin

Linguaggio C. Tipi predefiniti e operatori. Università degli Studi di Brescia. Docente: Massimiliano Giacomin Linguaggio C Tipi predefiniti e operatori Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 RICHIAMI char 8 bit Valori interi

Dettagli

Linguaggio C Strutture di controllo

Linguaggio C Strutture di controllo FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C Strutture di controllo 2001 Pier Luca Montessoro - Davide

Dettagli

Laboratorio di Informatica I

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

Dettagli

Fondamenti di C++ Input/Output di base

Fondamenti di C++ Input/Output di base Università della Calabria Corso di Laurea in Ingegneria Elettronica Programmazione Orientata agli Oggetti A.A. 2006/2007 Fondamenti di C++ Paolo Trunfio * * DEIS, Università della Calabria http://si.deis.unical.it/~trunfio

Dettagli

20/10/2014 M. Nappi/FIL 1

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

Dettagli

Assegnazione di una variabile

Assegnazione di una variabile Assegnazione di una variabile Per scrivere un valore dentro una variabile si usa l operatore di assegnazione, che è rappresentato dal simbolo =. Quindi, se scrivo int a; a = 12; assegno alla variabile

Dettagli

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

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,

Dettagli

Char e bool. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Char e bool. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 3 Istruzioni Iterative (Cicli) versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima

Dettagli

Corso di Fondamenti di Informatica Il sistema dei tipi in C++

Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Anno Accademico Francesco Tortorella Struttura di un programma C++ // Programma semplice in C++ #include int main() { cout

Dettagli

Fondamenti di Informatica T-1 Modulo 2

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

Dettagli

Linguaggio C: Espressioni

Linguaggio C: Espressioni Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 / 34 Ringraziamenti prof. Mirko Viroli, Università

Dettagli

Struttura di un programma C++

Struttura di un programma C++ Struttura di un programma C++ // Programma semplice in C++ #include using namespace std; int main() { cout

Dettagli

Il primo programma C++

Il primo programma C++ Il primo programma C++ Un programma in qualsiasi linguaggio evoluto è una sequenza di istruzioni che la CPU dopo opportune conversioni esegue. La sintassi dei linguaggi di programmazione è molto piu rigida

Dettagli

Linguaggio C: Espressioni

Linguaggio C: Espressioni Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti prof. Mirko Viroli, Università

Dettagli

IL COSTRUTTO ITERAZIONE 2

IL COSTRUTTO ITERAZIONE 2 IL COSTRUTTO ITERAZIONE 2 Il costrutto iterativo e la potenza di calcolo Il costrutto iterativo (detto anche ciclo) viene utilizzato quando un istruzione (o un gruppo di istruzioni) deve essere eseguita

Dettagli

Java SE 7. Strutture di programmazione (2)

Java SE 7. Strutture di programmazione (2) Java SE 7 Strutture di programmazione (2) diegozabot@yahoo.it ursula.castaldo@gmail.com Casting (1) E' l'operazione che realizza la conversione di tipo tra oggetti e tra tipi primitivi. E' un'operazione

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Introduzione Istruzioni

Dettagli

Strutture di Controllo Iterative: Istruzione FOR

Strutture di Controllo Iterative: Istruzione FOR Linguaggio C Strutture di Controllo Iterative: Istruzione FOR 1 Istruzioni iterative n Anche dette cicli n Prevedono l esecuzione ripetitiva di altre istruzioni (corpo del ciclo) n Ad ogni iterazione del

Dettagli

Istruzioni. Istruzioni semplici Istruzioni di controllo. Fondamenti di Informatica e laboratorio Istruzioni e Controllo del flusso

Istruzioni. Istruzioni semplici Istruzioni di controllo. Fondamenti di Informatica e laboratorio Istruzioni e Controllo del flusso 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

Dettagli

Lezione 6 Introduzione al C++ Mauro Piccolo

Lezione 6 Introduzione al C++ Mauro Piccolo Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Istruzione condizionale switch Istruzioni di salto break e continue Uso di variabili di tipo boolean Variabili di tipo array (monodimensionali)

Dettagli

Lab 04 Programmazione Strutturata"

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

Dettagli

Informatica/ Ing. Meccanica/ Ing. Edile/ Prof. Verdicchio/ 02/04/2014/ Appello straordinario/ Foglio delle domande / VERSIONE 1

Informatica/ Ing. Meccanica/ Ing. Edile/ Prof. Verdicchio/ 02/04/2014/ Appello straordinario/ Foglio delle domande / VERSIONE 1 Informatica/ Ing. Meccanica/ Ing. Edile/ Prof. Verdicchio/ 02/04/2014/ Appello straordinario/ Foglio delle domande/ VERSIONE 1 1) Nell uso dei puntatori in C++ la scrittura -> vuol dire: a) riferimento

Dettagli

Università di Roma Tor Vergata L6-1. iterazione: struttura di controllo per ripetere più volte uno stesso comando

Università di Roma Tor Vergata L6-1. iterazione: struttura di controllo per ripetere più volte uno stesso comando Università di Roma Tor Vergata L6-1 iterazione: struttura di controllo per ripetere più volte uno stesso comando comandi iterativi C++: while, do-while, for while: sintassi while (espressione) comando;

Dettagli

Laboratorio di Informatica I

Laboratorio di Informatica I Struttura della lezione Lezione 2: Elementi lessicali, casting e while Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica Università degli Studi di Salerno Soluzione agli esercizi

Dettagli

2001 Pier Luca Montessoro, Davide Pierattoni (si veda la nota di copyright alla slide n. 2)

2001 Pier Luca Montessoro, Davide Pierattoni (si veda la nota di copyright alla slide n. 2) - Linguaggio C - Espressioni e operatori FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing.DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C Espressioni e operatori

Dettagli

Espressioni ed operatori in C

Espressioni ed operatori in C Espressioni ed operatori in C Espressioni Il C è un linguaggio basato su espressioni Una espressione è una notazione che denota un valore mediante un processo di valutazione Una espressione può essere

Dettagli

Espressioni ed operatori in C

Espressioni ed operatori in C Espressioni ed operatori in C Espressioni Il C è un linguaggio basato su espressioni Una espressione è una notazione che denota un valore mediante un processo di valutazione Una espressione può essere

Dettagli

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. 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

Dettagli

Switch. Unità 3. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Switch. Unità 3. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico

Dettagli

Linguaggio C++ 5. Strutture cicliche

Linguaggio C++ 5. Strutture cicliche 2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) Linguaggio C++ 5 Strutture cicliche Linguaggio C++ 5 1 Strutture cicliche Utilizzate per ripetere un certo numero di volte

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 2 Istruzioni Condizionali G. Mecca M. Samela Università della Basilicata Istruzioni Condizionali >> Sommario Sommario Introduzione

Dettagli

Espressioni logiche. Espressioni logiche. Operatori logici. Operatori logici. Operatori logici. Espressioni Logiche e Istruzione di Test

Espressioni logiche. Espressioni logiche. Operatori logici. Operatori logici. Operatori logici. Espressioni Logiche e Istruzione di Test Espressioni logiche Espressioni Logiche e Istruzione di Test Fondamenti di Informatica 1 Massimo Di Nanni Gennaio, 2001 Espressioni logiche nelle Istruzioni di Test e di Iterazione Calcolo del massimo

Dettagli

Istruzioni Condizionali

Istruzioni Condizionali Istruzioni Condizionali Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA 1 Struttura di un programma Java Un programma Java consiste in un insieme di definizioni di classi. In genere

Dettagli

Esempi comparati while, do...while

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

Dettagli

Laboratorio. Due. 1) Switch 2) Costrutti Iterazione (For, While, do while)

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

Dettagli

STRUTTURE DI CONTROLLO IN C. Docente: Giorgio Giacinto AA 2009/2010

STRUTTURE DI CONTROLLO IN C. Docente: Giorgio Giacinto AA 2009/2010 Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

IL COSTRUTTO ITERAZIONE

IL COSTRUTTO ITERAZIONE IL COSTRUTTO ITERAZIONE Ragioniamo su questo esercizio Dati tre numeri farne la somma Modifichiamo il programma perché permetta di fare la somma di 1000 numeri. Il costrutto iterazione Il costrutto iterativo

Dettagli

Strutture di Controllo Condizionali e Operatori Logici e Relazionali

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

Dettagli

Strutture di Controllo

Strutture di Controllo Strutture di Controllo Fondamenti di Informatica Effettuare una scelta in un programma Istruzioni condizionali #include int main() char c; printf("inserire il carattere maiuscolo: "); scanf("%c",

Dettagli

Fondamenti di Informatica T-1. Selezione

Fondamenti di Informatica T-1. Selezione Selezione 2 Selezione Permette di differenziare il flusso di controllo a seconda che sia verificata o meno una condizione. Il flusso di controllo si ramifica in due (o più) sequenze di istruzioni alternative.

Dettagli

Introduzione alla programmazione in C(++)

Introduzione alla programmazione in C(++) Testi Testi Consigliati: Introduzione alla programmazione in C(++) A. Kelley & I. Pohl C didattica e programmazione A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. D. M. M. Ritchie

Dettagli

Esempio: quanto mi piace questo corso! qufuafantofo mifi pifiafacefe qufuefestofo coforsofo!

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

Dettagli

Prof. Pagani Corrado LINGUAGGIO C: SELEZIONE E CICLI

Prof. Pagani Corrado LINGUAGGIO C: SELEZIONE E CICLI Prof. Pagani Corrado LINGUAGGIO C: SELEZIONE E CICLI IF Ogni linguaggio di programmazione presenta almeno una struttura di controllo decisionale. La sintassi del linguaggio C è la seguente. if ()

Dettagli

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO CENTRO STUDI ULISSE Via Buccino, n. 22 - C.a.p. 84018 - Scafati (SA) Tel. Fax. 081.19970299-339.2365416-349.4152010 E-mail: info@centrostudiulisse.it - www.centrostudiulisse.it OCA JAVA 7 SE PROGRAMMER

Dettagli

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012 Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 Sommario Operatore? Tipo di dato: struct La ricorsione Funzioni ricorsive Esercizi proposti 26/04/2012 2 Operatore? L'operatore? può essere

Dettagli

Manualistica 3 Le strutture di 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

Dettagli

Indice. costrutti decisionali I cicli

Indice. costrutti decisionali I cicli Sintassi II Parte Indice Durante l'esecuzione di un codice, un programma può ripetere segmenti di codice, o di prendere decisioni e biforcarsi. A tal fine, il C fornisce istruzioni per il controllo di

Dettagli

Università degli Studi di Milano

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

Dettagli

Linguaggi di Programmazione I Lezione 9

Linguaggi di Programmazione I Lezione 9 Linguaggi di Programmazione I Lezione 9 Prof. Marcello Sette mailto://marcello.sette@gmail.com http://sette.dnsalias.org 6 maggio 28 Variabili 3 Ambiti................................................................

Dettagli

Primi esempi di programmi. Il tipo int Le variabili Altri tipi interi Operatori di assegnazione

Primi esempi di programmi. Il tipo int Le variabili Altri tipi interi Operatori di assegnazione Primi esempi di programmi Il tipo int Le variabili Altri tipi interi Operatori di assegnazione Il tipo int Un int permette di trattare numeri interi 4 byte (32 bit) con la tecnica del complemento a 2 (ma

Dettagli

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012 Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 Sommario Il Linguaggio C++ IDE Introduzione alla sintassi Istruzioni di scrittura e lettura Identificatori Tipi di dato predefiniti Dichiarazione

Dettagli