7. gyakorlat 3. kis ZH megirasa Ciklusok ======== for === for(kezdeti_ert_adasok; ciklus_valt_ellenorzes; iteracios lepes){} pl: elso 100 szam: for(i=1; i<=100,i+=i+1){ cout << i; } FA: Irassuk ki 100-ig azokat a szamokat, amik 6-tel oszthatok, de nem oszthatok 9-tel! Megoldas: --------- #include int main(){ int i; for (i=0; i< 100; i+=6){ if (i%9) cout << i << endl; } return 0; } FA: Szamoljuk ki 3.14 15. hatvanyat! Megoldas: --------- #include int main(){ int i; double szam=1.0; for (i=0; i< 15; i++){ szam=szam*3.14; } cout << "A hatvany:" << szam << endl; return 0; } FA: Irassuk ki az osszes szampart egy adott maximumig, ahol az elso kisebb mint a masodik szamjegy. Megoldas: --------- #include int main(){ int i, j; int MAX=9; for (i=0; i< MAX; i=i+1){ for (j=i+1; j #include using namespace std; int main(){ double Vegjel, Szam, Osszeg, Min, Max, Atlag; int Db; cout << "Ez a program valós számsorozat minimális," << endl; cout << "maximális elemét és átlagát számolja." << endl; cout << "Az input sorozatot végjel zárja." << endl; cout << "Kérem a végjelet!" << endl; cin >> Vegjel; cout << "Kérem az input számsorozatot!" << endl; cout <<"? "; cin >> Szam; Min = Max = Szam; Osszeg = 0.0; Db = 0; while (Szam != Vegjel) { Osszeg += Szam; Db++; if (Szam < Min) { Min = Szam; }else if (Szam > Max) { Max = Szam; } cout << "? "; cin >> Szam; } if (Db == 0) { cout << "Üres számsorozat érkezett." << endl; }else { Atlag = Osszeg / Db; cout << "Minimum = " << Min << " Maximum= " << Max << endl; cout << "Az átlag =" << Atlag << endl; } system("PAUSE"); return 0; } Az ismetleses vezerlesek helyettesithetok egymassal break, continue --------------- break: kilep az ismetleses vagy felteteles vezerlesbol es tovabb fut a program continue: az ismetleses vezerlesek eseten c ciklusmagon belul barhonnan kiadva a kovetkezo iteraciot vegzi, azaz: - while: a ciklus elejere es vizsgalat - do-while: a ciklus vegere es vizsgalat - for: ciklus eleje vizsgalat es cikusvaltozo modositas A c++ string adattipusa ----------------------- #include #include using namespace std; int main(int argc, char* argv[]) { std::string s="Hello Word!"; std::cout << s; return 0; } ertelmezett az = ertekedas c-ben ez nem mukodik. A c string adattipusa --------------------- A c-ben nincsen string, ezert karakterekbol allo vektroban taroljuk. char nev[40]; A string vegen '\0'. Probaljuk ezt ki. FA: Kerjunk be egy stringet char[] a cin paranccsal, majd forditsuk meg es irassuk ki. FA: Irassuk ki az osszes 3 jegyu szamot, amik az [1-7]-ig szamok kombinalasaval kaphatok, melyek szamjegyeinek az osszege nagyobb mint 10. #include int main(){ int i, j, k; int MAX=7; for (i=1; i<= MAX; i=i+1){ for (j=1; j<= MAX; j=j+1){ for (k=1; k<= MAX; k=k+1){ if (i+j+k > 10){ cout <