Laborfeladatok while cilussal:
1. Olvassunk be számokat addig a billentyűzetről, amíg a beolvasott szám pozitív (negatív számra lépjünk ki a ciklusból).
2. Olvassunk be 10 számot a billentyűzetről és határozzuk meg az átlagukat.
3. Olvassunk számokat a billentyűzetről, amíg a beolvasott szám pozitív (negatív számra lépjünk ki a ciklusból), majd írjuk ki a beolvasott pozitív páros számok összegét!
4. Olvassunk be számokat a billentyűzetről egészen addig, még nullát olvasunk (0 ra lépjünk ki), majd írjuk ki a beolvasott páratlan számok szorzatát és a pozitív páros számok összegét.
5. Olvassunk be n számot a billentyűzetről majd írjuk ki a maximumát, minimumát és a beolvasott nullák számát.
6. Határozzuk meg az x szám négyzetgyökét, a következő képletet
alkalmazva (az iterálást addig kell végezni amíg yn-yn-1
<0.0001)
y0 = 1
yn = 1/2*(yn-1 + x/yn-1)
Tipp1: használjunk double típust a nagyobb pontosság érdekében!
Tipp2: az yn-yn-1 különbséget moduluszban kell
venni, ehhez használjuk az stdlib könyvtárat (#include <stdlib.h>
- a program elején) s az abs(y1-y2) fogja
az y1-y2 különbség moduluszát visszatéríteni.
Megoldott Feladat
A π (pi) értékét a következő egyszerű iteratív
képlettel lehet megközelíteni: pin = pin-1 +
sin(pin-1)
#include <iostream> #include <stdlib.h> #include <math.h> using namespace std; int main(){ double x,y,k,epsilon; //kell egy kezdo kozelito erteket adni, ami lehet peldaul 1 cout <<"Honnan kezdjuk a kozelitest:"; cin >>x; y=x; k=0; epsilon = fabs(y-k); //addig ismeteljuk a kozelitest, amig ket kozelitesi ertek kozott a kulonbseg nagyon kicsi while (epsilon > 0.00000000001){ k=y; y=k+sin(k); epsilon = fabs(y-k); } cout <<"A pi kozelito erteke:"<< y; return 0; }