Il linguaggio C++
Struttura di un programma in C++ specificazione dei file di intestazione void main() { dichiarazioni di tipi e variabili istruzioni }
I file di inclusione #include<conio.h> #include<stdlib.h> void main() { istruzioni }
Alcune librerie del C++ conio.h clrscr(); gotoxy(x,y); kbhit(); dos.h delay(msec); sound(freq); nosound();
Alcune librerie del C++ iostream.h cin cout math.h sqrt(x); ceil(x); (Approssima per eccesso) floor(x); (Approssima per difetto)
Alcune librerie del C++ stdlib.h atoi(n); random(n); randomize(); stdio.h gets(s); getchar();
Alcune librerie del C++ ctype.h toupper(c); tolower(c); string.h strcat(s1,s2); strcpy(s1,s2); strlen(s); strupr(s); strlwr(s); strcmp(s1,s2);
La documentazione /*sono un commento*/ //sono un commento
Le variabili e le costanti const float pi_greco=3.14159 const int anno=2000; int anni; float peso; char vocale; bool flag;
Tipi interi Operazioni ammesse: unsigned int 0 a 65535 unsigned long 0 a 4294967295 long -2147483648 a +2147483647 Operazioni ammesse: + - * / %
Tipi in virgola mobile Operazioni ammesse: float 3.4*10-38 a 3.4*10+38 double 1.7*10-308 a 1.7*10+308 long double 3.4*10-4932 a 1.1*10+4932 Operazioni ammesse: + - * /
Tipi carattere Operazioni ammesse: unsigned char 0 a 255 + - * / %
Operatori di confronto < <= > >= == (uguale) != (diverso) restituiscono : 0 (false) se il confronto è falso 1 (true) se vero
L’assegnazione valoredibase=1000; area=base*altezza/2
Gli operatori booleani a || b a && b
La gestione dell’input/output cin>>anno; cin>>giorno>>mese; cout<<anno<<‘\n’; cout<<“messaggio \n”; cout<<“messaggio”; #include <iostream.h> //per riconoscere cin e cout #include <stdio.h> //per riconoscere getchar void main() { int num; cout<<“Inserisci un numero, lo indovinero' "; cin>>num; cout<<"Il numero che hai inserito e' "<<num; getchar(); }
Le strutture di controllo sequenza selezione iterazione
Sequenza { istruzione 1; istruzione 2; ... istruzione n; } //Calcolo area e perimetro del quadrato #include <iostream.h> //per riconoscere cin e cout #include <stdio.h> //per riconoscere getchar void main() { int l,a,p; cout<<"Inserisci il lato "; cin>>l; a=l*l; p=l*4; cout<<"Area = "<<a; cout<<"\nPerimetro = "<<p; getchar(); } { istruzione 1; istruzione 2; ... istruzione n; }
Selezione if (espressione) {sequenza1} else {sequenza 2} /*Inserire un numero, dire se pari o dispari */ #include <iostream.h> //per riconoscere cin e cout #include <stdio.h> //per riconoscere getchar void main() { int num; cout<<"Inserisci un numero "; cin>>num; if (num%2==0) cout<<"Il numero e' pari "; else cout<<"Il numero e' dispari "; getchar(); //per bloccare la videata } if (espressione) {sequenza1} else {sequenza 2}
Selezione multipla switch (espressione intera) {case c1 : seq.1; break; case c2: seq.2; break; ... default : seq.n; } ... switch (scelta) {case 1: carica;break; case 2: visualizza; break; case 3: cout<<“Fine”; break; default : cout<<“Scelta errata”; }
Iterazione Controllo in testa: while Controllo in coda: do ... while Ciclo for
Controllo in testa: while /*Ripetere piu' volte: inserire un numero e calcolare il quadrato */ #include <iostream.h> #include <stdio.h> void main() { int num,n,cont=0; cout<<"Inserisci lunghezza sequenza "; cin>>n; while (cont<n) cout<<"\nInserisci un numero "; cin>>num; cout<<"Quadrato di "<<num<<“=“<<num*num; cont++; } getchar(); //per bloccare la videata while (espressione) { sequenza }
Controllo in coda: do ... while { sequenza } while (espressione) //Inserire una sequenza di numeri e sommarli #include <iostream.h> #include <stdio.h> void main() { int num,somma=0; cout<<"Inserisci la sequenza (0 per terminare)\n"; do { cout<<"Inserisci un numero "; cin>>num; somma=somma+num; }while(num!=0); cout<<"Somma = "<<somma; getchar(); //per bloccare la videata }
Il ciclo for for (esp1; esp2; esp3) { sequenza } //Inserire n numeri, contare i pari e i dispari #include <iostream.h> #include <stdio.h> void main() { int n,num,contp=0,contd=0; cout<<"Inserisci lunghezza della sequenza "; cin>>n; for(int i=1;i<=n;i++) cout<<"Inserisci un numero "; cin>>num; if (num%2==0) contp++; else contd++; } cout<<"Numeri pari = "<<contp; cout<<"\nNumeri dispari = "<<contd; getchar(); //per bloccare la videata for (esp1; esp2; esp3) { sequenza }