210 likes | 617 Views
Cikliniai skaičiavimai. Ciklas while. Mokiniai, susipažinę su while ciklu ir pakartoję sumos skaičiavimą, kartu su mokytoju atliks praktinę užduotį. Pamokos uždavinys.
E N D
Cikliniai skaičiavimai Ciklas while
Mokiniai, susipažinę su while ciklu ir pakartoję sumos skaičiavimą, kartu su mokytoju atliks praktinę užduotį. Pamokos uždavinys
Iš plytų galima pastatyti vienos plytos storio taisyklingą sieną, kurios viršūnėje yra viena plyta, o šonuose – pusės plytos ilgo laipteliai. Reikia parašyti programą, kuri apskaičiuotų, kelių plytų a bus sienos pagrindas ir kelių plytų aukščio k bus siena, jei žinomas sienos statybai skirtų plytų skaičius. Užduotis
Viršuje paveiksle pavaizduotos sienos pagrindą a sudaro 4 plytos, sienos aukštis k = 4 plytos, sienai pastatyti reikėjo p = 10 plytų. • Sienai pastatyti panaudotą plytų skaičių patogiau skaičiuoti iš viršaus į apačią. • Skaičiavimai kartojami, kol statyboms panaudotų plytų skaičius s mažesnis už statyboms skirtų plytų skaičių p: • Plytų skaičius a eilėje gaunamas prieš tai buvusią reikšmę didinant vienetu; • Sienos aukščio reikšmė k gaunama buvusią reikšmę didinant vienetu; • Sienos statybai panaudotų plytų skaičius s gaunamas prie buvusio reikšmės s pridedant naujos eilės plytų skaičių a. Algoritmas
Lentelėje pavaizduota kaip keičiasi reikšmės, atliekant veiksmus, kol s reikšmė mažesnė už p reikšmę. Pradinės reikšmės: a = 0, k = 0, s = 0, p = 10. algoritmas
Programos pradžioje aprašykite naudojamus kintamuosius: sienai statyti skirtų plytų skaičių p, sienos pagrindo ilgį a, sienos aukštį k ir statybai panaudotas plytas s. Parašykite kintamojo p reikšmės įvedimo klaviatūra sakinius: pranešimo, kokią reikšmę įvesti, sakinį cout ir reikšmės skaitymo sakinį cin. Programos pradinių duomenų aprašymas ir įvedimas
Papildykite programą trimis priskyrimo sakiniais: a = 0; k = 0; s = 0; ir sakiniais, skirtais kintamųjų a, k ir s reikšmėms išvesti į ekraną: Pradinių reikšmių priskyrimas
Cikle atliekami keli veiksmai, todėl ciklo sakinyje jie turi būti rašomi tarp riestinių skliaustų { }. Ciklo antraštė. Veiksmai cikle
Norėdami įsitikinti, kad programa skaičiuoja teisingai, galima išvesti tarpinius rezultatus. Tai reikia atlikti ciklo viduje. Tarpinių rezultatų išvedimas
Norėdami rezultatus pateikti lentele, programą papildykite: • Sakiniais apie programos paskirtį: • Sakiniais, formuojančiais antraštinę lentelės eilutę: • Sakiniu, išvedančiu apskaičiuotas reikšmes: • Sakiniu, formuojančiu paskutinę eilutę: Skaičiavimų pateikimas lentele
Jeigu įvestume 8, gautume ta patį rezultatą, kaip ir su 10. Rezultatas neteisingas. • Išvada. Reikia tikrinti, ar užteks likusių plytų naujai eilei. • Ciklo antraštėje s < p pakeiskite a + 1 <= p – s. Įvykdę turėtumėte matyti: Tikrinimas ar geri rezultatai
Papildykite programą skaičiavimu, kiek liko plytų. Įvedę 8 turėtume gauti, kad liko 2 plytos. Papildymas
Martynas labai mėgsta saldainius. Mamos slėptuvėje berniukas rado m saldainių. Pirmą dieną jis suvalgė 1 saldainį, antrąją – 2, trečiąją 3. Kiekvieną kitą dieną jis suvalgydavo vienu saldainiu daugiau negu prieš tai buvusią. Per kelias dienas d Martynas suvalgys visus saldainius? Paskutinei dienai gali likti ir mažiau. Pasitikrinimui. Kai m = 11, turėtumėte gauti d = 5. Užduotis smalsiems
Su kokiu ciklu susipažinome? Kaip jis aprašomas? Kaip mums sekėsi?
Tampate pradedančiais programuotojais, nes jau mokate įsivesti duomenis, naudoti matematinius veiksmus, sąlygos sakinį ir ciklus. Išvada