CATEGORII DOCUMENTE |
1. SCOPUL LUCRARII
In aceasta lucrare se vor studia instructiuni de ciclare for, while si do.while.
2. BREVIAR TEORETIC
2.1. Instructiunea for
Sintaxa:
for(<expr1: initializarea variabilelor de control ale ciclului>;
<expr2: testul de continuare a ciclului>;
<expr3: actualizarea variabilelor de control ale ciclului>)
Observatii:
- INAINTE de prima iteratie se evalueaza expr1.
- DUPA fiecare iteratie pe bucla, este evaluata expr3.
- Toate cele 3 expresii sunt optionale.
- Repetarea la infinit a unui grup de instructiuni se face astfel:
for(;;)
Exemplu:
for(i=0;i<=10;i++)
printf('nPatratul lui %d este %d',i,i*i);
2.2. Instructiunea do-while
Sintaxa:
dowhile(expresie_conditie);
Descriere:
Grupul de instructiuni este executat repetitiv, cat timp valoarea expresiei ramane diferita de zero (ramane adevarata). Expresia de test este evaluata DUPA fiecare executie a grupului de instructiuni.
Exemplu:
dowhile(nr<=0);
2.3. Instructiunea while
Sintaxa:
while(expresie_conditie)//end while
Descriere:
Grupul de instructiuni se executa repetat, cat timp valoarea expresiei ramane diferita de 0 (ramane adevarata). Expresia de test este evaluata INAINTE de fiecare executie a grupului de instructiuni.
Exemplu:
stop=0;
while(!stop)
2.4. Instructiunea continue
Sintaxa:
continue;
Descriere:
Determina, in iteratia curenta, saltul la sfarsitul secventei de instructiuni ce formeaza corpul unui ciclu (for, do-while, while) si reluarea ciclului cu iteratia urmatoare (daca mai sunt iteratii de facut).
Exemplu:
for(i=1;i<=10;i++)
2.5. Instructiunea break
Sintaxa:
break;
Descriere:
Realizeaza iesirea fortata in afara ciclului curent ( for, do-while, while).
Exemplu:
for(;;)
3. DESFASURAREA LUCRARII
Se vor edita si apoi executa programele descrise in continuare.
Programul nr. 1
Se citeste un numar natural N. Sa se afiseze N stelute, pe verticala.
#include<stdio.h>
#include<conio.h>
void main(void)
Programul nr. 2
Sa se calculeze si sa se afiseze suma a N numere citite de la tastatura. (N este cunoscut).
# include <stdio.h>
# include <conio.h>
#define N 20
void main(void)
printf("Suma calculata este "%d",suma);
getch();
Programul nr. 3
Sa se calculeze si afiseze maximul a N numere intregi citite de la tastatura.
#include <stdio.h>
#include <conio.h>
void main(void)
printf('Maximul dintre numerele tastate este %d .',maxim);
getch();
Programul nr. 4
Se citeste un numar natural de la tastatura. Sa se stabileasca daca este numar prim sau nu.
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main(void)
if(estePrim==1)printf("Este prim.");
else printf("Nu este prim.");
getch();
Programul nr. 5
Sa se realizeze un program care scoate ca rezultat numarul de numere naturale de trei cifre care au suma cifrelor mai mare decat 10.
#include <stdio.h>
#include <conio.h>
void main(void)
// if
} //for
printf('n%d',nr); //afisez numarul de numere care indeplinesc conditia
getch();
}// main
Programul nr. 6
Se citesc doua numere naturale a si b. Sa se afiseze daca sunt prime intre ele sau nu.
#include<stdio.h>
#include<conio.h>
void main(void)
int i;
int sunt=1;//presupunem ca sunt
for(i=2;i<=a;i++)
if((a%i==0)&&(b%i==0))
if(sunt==1)printf('Sunt prime intre ele');
else printf('Nu sunt prime intre ele');
getch();
Programul nr. 7
Sa se rezolve in numere naturale ecuatia: 2x + 3y + 4z = 71 .
# include <stdio.h>
# include <conio.h>
void main(void)
Programul nr. 8
Se repeta citirea unui numar intreg de la tastatura, pana cand numarul introdus se gaseste in intervalul [ 7, 20 ].
#include<stdio.h>
#include<conio.h>
void main(void)
printf("n S-a tastat %d",nr);
getch();
}//main
Programul nr. 9
Sa se calculeze numarul de cifre al unui numar intreg citit de la tastatura.
#include <stdio.h>
#include <conio.h>
void main(void)
printf('Numarul are %d cifre. ',nrCifre);
getch();
Programul nr. 10
Folosind instructiunea do..while, sa se scrie un program in care se executa urmatorul meniu de comenzi:
1. desen triunghi
2. desen patrat
3. iesire
Figurile geometrice se deseneaza in modul text, folosind caracterul steluta (asterisc).
# include <stdio.h>
# include <conio.h>
void main(void)
//switch
}while(stop==0);
}//end main
Programul nr. 11
Folosind instructiunea dowhile, sa se transpuna in limbajul C urmatoarea secventa de program, scrisa in pseudocod:
se repeta
se repeta
se citeste numarul intreg a
cat timp a este in afara intervalului [1 , 10]
se citeste numarul intreg b
cat timp b<a .
#include <conio.h>
# include <stdio.h>
void main(void)
while((a<1)||(a>10));
printf('b=');scanf('%d',&b);
}while(b<a);
printf('a=%d, b=%d',a,b);
getch();
Programul nr. 12
Sa se calculeze cel mai mare divizor comun a doua numere naturale a si b, folosind urmatorul algoritm:
cat timp a b repeta
daca a>b atunci a a-b
altfel b b-a
cmmdc a
#include <stdio.h>
#include conio.h>
void main()
4. PROBLEME PROPUSE
1. Sa se implementeze, folosind instructiunea for, urmatoarea secventa de instructiuni, descrisa in pseudocod:
se repeta
se repeta
se citeste a
pana cand a > 0
se citeste b
cat timp b < a
2. Se citeste un numar natural a. Sa se calculeze si afiseze primul numar prim mai mare decat a.
3. Sa se realizeze un program care realizeaza c.m.m.d.c. a trei numere.
4. Se citesc doua numere N1 si N2, naturale (N2 > N1). Cate numere prime sunt in intervalul [N1, N2] ?
5. Sa se implementeze jocul "afla numarul". Operatorul alege un numar intre 1 si 1000. Calculatorul trebuie sa-l determine din cat mai putine incercari. Calculatorul propune un numar. Operatorul ii raspunde: Este prea mare, este prea mic, sau egal.
6. Sa se arate ca fractia (65n+3)/(39n+2) este ireductibila pentru orice numar natural n cuprins intre 1 si 500.
7. Ce semne ( + sau -, deci adunare sau scadere) se pun in locul semnului ? pentru ca expresia urmatoare sa fie adevarata?
5 ? 7 ? 2 ? 20 = 30
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1364
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved