prasom
TRANSCRIPT
![Page 1: prasom](https://reader036.vdocuments.site/reader036/viewer/2022081802/552b75fc4a7959ac588b46bd/html5/thumbnails/1.jpg)
Kur nereikia įvedinėti iš klaviatūros, galima daryti ir su codepad.org (ypač, jei kiltų nesklandumų su CodeBlocks ar Visual C++ Express instaliavimu)...Atsiskaitymas priimamas atitinkamoms gurpėms iki vasario 27/28/ kovo 2. (bet geriau per 1 paskaitą padaryt ;)
Yra programos fragmentas:a = 1S = 0while (S < 20){a = a*2S = s+acout << a << " ir " << S << endl;}
Pagal jį padaryti programą, kad ji veiktų be klaidų ir atspausdintų kaip keičiasi a ir S reikšmės. C++ programos veikiančių pavyzdžių rasite lape iš teorijos paskaitos arba, pvz, oficialioje C++ pamokų svetainėje. Kiek kartų bus vykdomas ciklas while?
Sukurti programą, kuri:
a) naudodama for ciklą, atspausdina (1 tšk): 1 labas2 labas3 labas
Dalis atskirkite komentaru bei pranešimu ekrane:// a daliscout << "a dalis" << endl;....// b daliscout << "b dalis" << endl;...
b) naudodama for ciklą atspausdina aritmetinę progresiją nuo 0 iki 15 (didėdama po 3); (1 tšk)pvz: 0 3 6 9 12 15
priminimas: "for" iš principo yra "while", tik jame vienoje eilutėje išvardinama:
1) pradinė skaitliuko reikšmė, (int a=1) 2) kartojimo sąlyga, ir ( a < 10 ) 3) skaitliuko kitimas ( a=a+1 )
c) atspausdina progresijos (iš b dalies) narių sumas (t.y., palaipsniui sumuoja progresijos narius).pvz: 0 3 9 18 30 45 (1 tšk)
d) naudodama ciklą cikle atspausdina tokią skaičių "piramidę": (2tšk), (ciklų idėja panaši, kaip apšilimo 1 užduoties 6 punktas.)11 21 2 31 2 3 41 2 3 4 51 2 3 4 5 6
![Page 2: prasom](https://reader036.vdocuments.site/reader036/viewer/2022081802/552b75fc4a7959ac588b46bd/html5/thumbnails/2.jpg)
Visas užduoties dalis galite daryti viename faile (main funkcijoje), tačiau prieš kiekvieną jų parašykite jos pavadinimą (cout << "A dalis" << endl;) e) reik daryti su Visual C++ (nemokama "Express" versija) arba CodeBlocks (parsisiųsti). (1 tšk) Visual C++ youtube.com/watch?v=PuzH8ZZ1j0s&feature=fvwrel&t=35s CodeBlocks programavimo aplinka (esmė nuo 7min iki 12:30)
programos pradžioje paklausia "iki kiek skaičiuoti?", ir pagal klaviatūra įvestą reikšmę (pvz.: cin >> k, youtube.com/watch?v=9fDoxYkMVm0&t=1m10s), atspausdina nuo 1 iki k kartų "x labas" (1 tšk). pvz:
Iveskite, iki kiek skaičiuoti: 51 labas2 labas3 labas4 labas5 labas Pastaba: Visual Studioj programos langas neskubėtų pradingti, reikia programą paleisti su Ctrl+F5 , arba programos pabaigoje parašyti porą kart "cin.get();" .
f) iš klaviatūros paprašyti, kad įvestų a) pradinę reikšmę, b) pabaigos reikšmę , c) kitimo žingsnį ir atspausdinti aritmetinę progresiją (1 tšk):
Iveskite, nuo kiek skaičiuoti: 5Iveskite, iki kiek skaičiuoti (imtinai): 13Iveskite, kas kiek skaičiuoti: 25 7 9 11 13
z) už tvarkingą kodą: suderintus grupavimo skliaustus, ir grupuojamų komandų atitraukimą nuo krašto dar 0,5tškpvz1, pvz2, bei google rekomendacijų pvz === FUNKCIJOS === G) suskirstykit visas dalis į funkcijas, pavadinkite jas A, B, C, ... // 1tšk ir jas iškvieskite pagrindinėje ("main") programos dalyje. Apie funkcijas galima pasiskaityti teorijos 3 psl arba čia (LT) arba čia (EN). H) Pridėkite funkcijoms parametrus, kurie nurodytų - kiek kartoti veiksmus: //1tšk A dalies funkcijai, pvz void A(int k){ ...} A(3) ; // atspausdins tai, kas buvo pradiniam pavyzdyjeA(5) ; // atspaudins 5 eilutes ;) B (3); // atspausdins 3 narius: 0 3 6B (5); // atspausdins 5 narius: 0 3 6 12 15ir kt dalims analogiškai. I) sukurkite funkciją "seksum(...)", kuri sudeda seką (iš B dalies) ir grąžina jos sumą ( C dalies idėjos ) // 2tšk pvz:
![Page 3: prasom](https://reader036.vdocuments.site/reader036/viewer/2022081802/552b75fc4a7959ac588b46bd/html5/thumbnails/3.jpg)
cout << seksum( 4 ); // grąžins ir atspausdins 18 (0+3+6+9)#include <iostream>usingnamespace std;void funkcija_A(int f){for(int a=1; a<=f; a ++){cout << endl << a << " Labas " << endl;}}void funkcija_B(int c){for(int i=0; i<=c*3; i=i+3){cout << i << " ";}cout << endl;}void funkcija_C(int g){int mas[6] = {0, 3, 6, 9, 12, 15};int sum = 0;for(int i=0; i<=g; i++){sum = sum + mas[i];cout << sum << " ";}}void funkcija_D(int o){for (int p=1; p<=o; p++){for(int j=1; j<=p; j++){cout << j;}cout << endl;}}void funkcija_E(int z){cout << "Iveskite skaiciu kiek kartu spausdinti: ";int y;cin >> y;for (int a=1;a<=y; a++){cout << endl << a << " Labas " << endl;}}void funkcija_F(int n){int g,h,j;cout << "Iveskite pradzios skaiciu:";cin >> g;cout << "Iveskite pabaigos skaiciu:";cin >> h;cout << "Iveskite kitimo skaiciu:";cin >> j;for(int i=g; i<=h; i=i+j){cout << i << " ";}cout << endl;}int seksum(int e){int a1, a2, sum=0; a2=0;for(int a1=0; a1<e-1;a1++){a2=a2+3;sum=sum+a2;}return(sum);}int main (){cout << endl << " A DALIS " << endl;funkcija_A(6);cout << " B DALIS "<< endl;funkcija_B(5);cout << endl << " C DALIS "<< endl;funkcija_C(5);cout << endl << " D DALIS "<< endl;funkcija_D(5);cout << endl << " E DALIS "<< endl;funkcija_E(5);cout << " F DALIS "<< endl;
![Page 4: prasom](https://reader036.vdocuments.site/reader036/viewer/2022081802/552b75fc4a7959ac588b46bd/html5/thumbnails/4.jpg)
funkcija_F(5);cout << " I DALIS "<< endl;cout<<seksum(4)<<endl;cin.get();cin.get();}