Sveiki. Mokinuosi savarankiškai C++ kurį laiką, bet visiškai nesuprantu kaip reikia taisyklingai sukurti programą, panaudojant ciklą while. Literatūros lietuvių kalba mažai randu - ne per daugiausiai, o anglų kalba nerandu tokios informacijos kaip spręsti tokio tipo uždavinius.
Esu tik pasirases 1 uždavinį, bet jo pradzia.
Gal kas paaiškintų kaip parašyti while ciklą 1 uždavinyje ir kokia while struktūra yra rašoma tokio tipo uždaviniuose?
valdas3 +1276
Nelabai ten ką yra apie tą while ir žinot, jis tiesiog kartos sakinius parašytus while bloke kol bus tenkinamos sąlygos. Čia jau reikia pasukti galvą ties uždavinių, ką nors įžvelgti. O dėmesį reikėtų atkreipti į tai kaip keičiasi grandžių ilgiai dėliojant degtukus. Beje, mano atrodo, kad antras rezultatas yra klaidingas.
Mantis3728 +366
Jei nerandi kur mokytis,tai i youtube ivesk bucky c++ programming tutorials, jei anglu moki, paziurek kokius 5! video.
O siaip jei tik ko nesuprasi,rasyk cia
matrix +104
Mantis3728Jei nerandi kur mokytis,tai i youtube ivesk bucky c++ programming tutorials, jei anglu moki, paziurek kokius 5! video.
O siaip jei tik ko nesuprasi,rasyk cia
Aš suprantu kas yra ciklas while - veiksmu kartojimas. Bet esmė, nemoku suformuluoti formulės uždavinio išsprendimui kaip pirmajam uždaviniui ;/
Mantis3728 +366
Geriau nuo lengvesniu pradek
a++ ,tas pats kaip a = a + 1
a+=1 tas pats kaip a = a + 1
pakeista prieš 10 m
matrix +104
Dėkui už pagalbą. O pvz ziurek sprendžiant toki viena pratima su for ciklu man iskyla problema. Uždavinys:
Kaip reikia uzrasyti, kad programa tuos skaicius atrinktu, kurie dalinasi is 4 ir 400?
Mano sprendimas (nepilnas):
matrix +104
Mantis3728
Geriau nuo lengvesniu pradek
a++ ,tas pats kaip a = a + 1
a+=1 tas pats kaip a = a + 1
O kas yra int h ir int k? Ką jie reiškia?
pakeista prieš 10 m
Mantis3728 +366
k reiskia ,kiek degtuku reikia eilei sudaryti,is pradziu 1 ,veliau 2,veliau 3 ir t.t
h reikalingas tam,kad kas antra karta sukant tik pridetu 1 prie k ,nes gi is pradziu reikia 1degtuko,tada vel 1degtuko,veliau 2 ,vel 2,tada 3 ir vel 3.
atrinkti galima su % zenklu.
Tarkim x = 1900,tai rasai if(x % 4 == 0) ,tai reiskia ,jei skaiciu padalinus is 4 gaunasi liekana 0,atsakymas yra sveikasis skaicius.
arba kad ir if(x%1900 == 0){kazka daro tada;} tai darys tik tada,jei skaicius bus 1900,3800,5700 ir t.t
pakeista prieš 10 m
matrix +104
Dar vienas uzdavinys, kurio niekaip neisprendziu ;/
Mano sprendimas: int n; int k; int i; int suma = 0;
cin >> n; cin >> k;
cout << endl; cout << endl;
for (i = 1; i<=n; i++){ suma = (suma * 2)/k) + k;
cout << suma << endl; }
Kuriose vietose reiktų pakoreguoti, kad teisingai butu?
Mantis3728 +366
suma =suma + (suma * 2)/k) + k;
Taciau,ne visada gausi teisinga atsakyma :) pakeisk for cikla i
for (i = 0; i < n; i++) { suma =suma + k + 2 * i; }