Documente Academic
Documente Profesional
Documente Cultură
Programarea calculatoarelor i
limbaje de programare I
Capitolul 6
Introducere
Sumar
1.
2.
3.
4.
5.
Instruciunea while
Fazele de execuie a unei bucle
Implementarea buclelor folosind
instruciunea while
Operaii n bucl
Instruciuni while imbricate
Programarea calculatoarelo
r i limbaje de programare
Instruciunea while
Exemplu
while(valIn!=25)
cin>>valIn;
Instruciunea while
Instruciunea while
true
Instruciune
Instruciunea 2
Programarea calculatoarelo
r i limbaje de programare
Instruciunea while
Exemplu
while(expresie)
{
...
}
Sumar
1.
2.
3.
4.
5.
Instruciunea while
Fazele de execuie a unei bucle
Implementarea buclelor folosind
instruciunea while
Operaii n bucl
Instruciuni while imbricate
Programarea calculatoarelo
r i limbaje de programare
3.
4.
5.
Programarea calculatoarelo
r i limbaje de programare
Programarea calculatoarelo
r i limbaje de programare
10
Sumar
1.
2.
3.
4.
5.
Instruciunea while
Fazele de execuie a unei bucle
Implementarea buclelor folosind
instruciunea while
Operaii n bucl
Instruciuni while imbricate
Programarea calculatoarelo
r i limbaje de programare
11
12
Exemplu
intcontorBucla=1;//initializare
while(contorBucla<=10)//test
{
...//actiunecareserepeta
contorBucl++;//incrementare
}
Programarea calculatoarelo
r i limbaje de programare
13
14
15
16
Exemplu
intluna,ziua;
cin>>luna>>ziua;//citesteprimulsetdedate
while(!(luna==2&&ziua==31))
{
...//procesare
cin>>luna>>ziua;//urmatorulsetdedate
}
Programarea calculatoarelo
r i limbaje de programare
17
18
Exemplu
Atunci cnd prelucrm date de tip char
putem folosi caracterul newline ca valoare
santinel
charinChar;
cin.get(inChar);
while(inChar!=\n)
{
cout<<inChar;
cin.get(inChar);
}
Programarea calculatoarelo
r i limbaje de programare
19
20
Exemplu
charinChar,valSemnal;
cin>>inChar>>valSemnal;
while(valSemnal=1)
//dingresealaamfolosit=
//inlocde==
{
...
cin>>inChar>>valSemnal;
}
Programarea calculatoarelo
r i limbaje de programare
21
22
23
24
Exemplu
S presupunem c avem un fiier de date
care conine valori ntregi
intinVal;
inData>>inVal;
while(inVal){
cout<<inVal<<endl;
inData>>inVal;
}
Programarea calculatoarelo
r i limbaje de programare
25
26
Sumar
1.
2.
3.
4.
5.
Instruciunea while
Fazele de execuie a unei bucle
Implementarea buclelor folosind
instruciunea while
Operaii n bucl
Instruciuni while imbricate
Programarea calculatoarelo
r i limbaje de programare
27
Operaii n bucl
contorizare
nsumare
pstrarea unei valori anterioare
Programarea calculatoarelo
r i limbaje de programare
28
Contorizarea
Programarea calculatoarelo
r i limbaje de programare
29
Contorizarea
Exemplu
#include<iostream>
usingnamespacestd;
intmain()
{
charinChar;
intcount=0;//initializareacontorului
cin.get(inChar);//citireaprimuluicaracter
while(inChar!='.')
{
count++;//incrementareacontorului
cin.get(inChar);//citireaurmatoruluicaracter
}
cout<<"Propozitiaare"<<count
<<"caractere"<<endl;
return0;
}
Programarea calculatoarelo
r i limbaje de programare
30
Contorizarea
31
nsumarea
Exemplu
#include<iostream>
usingnamespacestd;
intmain()
{
intnumar;
intsuma=0;
intcontor=1;
while(contor<=5)
{
cin>>numar;
suma=suma+numar;
contor++;
}
cout<<"Sumaeste"<<suma<<endl;
return0;
}
Programarea calculatoarelo
r i limbaje de programare
32
nsumarea
33
34
Programarea calculatoarelo
r i limbaje de programare
35
36
Sumar
1.
2.
3.
4.
5.
Instruciunea while
Fazele de execuie a unei bucle
Implementarea buclelor folosind
instruciunea while
Operaii n bucl
Instruciuni while imbricate
Programarea calculatoarelo
r i limbaje de programare
37
Exemplu
Ne propunem s numrm cte caractere ; sunt pe
fiecare linie dintr-un fiier
charinChar;
inFisier.get(inChar);
while(inFisier)
{
intcontorPunctVirgula=0;
while(inChar!='\n')
{
if(inChar==';')
contorPunctVirgula++;
inFisier.get(inChar);
}
cout<<contorPunctVirgula<<endl;
inFisier.get(inChar);
}
Programarea calculatoarelo
r i limbaje de programare
38
Iniializarea_buclei_exterioare
while(condiia_buclei_exterioare)
{
...
Iniializarea_buclei_interioare
while(condiia_buclei_interioare)
{
Procesarea_i_actualizarea_buclei_interioare
}
...
Actualizarea_buclei_exterioare
}
Programarea calculatoarelo
r i limbaje de programare
39
Programarea calculatoarelo
r i limbaje de programare
40