Kolmanda praktikumi ülesanded
Järgmisest kolmest ülesandest tuleb lahendada vähemalt üks. Lahendused tuleb esitada Moodle'is, kus need kontrollitakse automaatselt.
Kontrollülesanne 3.4a Lillede arv v2
On traditsioon, et rõõmsatel puhkudel kingitakse paaritu arv lilli. Üks teine lillepood on otsustanud, et nende sünnipäeval saab iga klient kingituseks lilli nii, et esimene ostja saab ühe lille, teine ostja saab kolm lille, kolmas ostja saab viis lille, neljas ostja seitse lille jne.
Koostada programm, mis
- küsib kasutajalt klientide arvu (mittenegatiivne täisarv);
- arvutab while-tsükli abil lillede koguarvu, mida pood klientidele kingib;
- väljastab kingitavate lillede koguarvu.
Näiteks, kui kasutaja sisestas 4, siis paaritute arvude summa on 16, sest 1 + 3 + 5 + 7 = 16. Kui kasutaja sisestas 7, siis on summaks 49, sest 1 + 3 + 5 + 7 + 9 + 11 + 13 = 49.
Näited programmi tööst:
![](https://courses.cs.ut.ee/2020/prog-alused/spring/Main/Praktikum3?action=download&upname=yl3.4a.1.png)
![](https://courses.cs.ut.ee/2020/prog-alused/spring/Main/Praktikum3?action=download&upname=yl3.4a.2.png)
Kui olete juba hulk aega proovinud ülesannet iseseisvalt lahendada ja see ikka ei õnnestu, siis võib-olla saate abi murelahendajalt
. Püütud on tüüpilisemaid probleemseid kohti selgitada ja anda vihjeid.
Kontrollülesanne 3.4b Vabavisked
Korvpalluri vabavisete senist visketabavust saab (teatud mööndustega) kasutada tuleviku visete tõenäosusena.
Koostada programm, mis
- küsib kasutajalt visketabavuse (tabavustõenäosuse) protsentides (täisarv 0 kuni 100);
- simuleerib while-tsükli abil 1000 viset ja igal viskel (arvestades tõenäosust) väljastab, kas see tabas;
- iga viske kohta peab väljastama ühe rea ja see rida peab sisaldama sõna tabas või mööda
- arvutab kokku tabanud visete arvu ja väljastab selle kõige viimasena.
Näide programmi tööst:
![](https://courses.cs.ut.ee/2020/prog-alused/spring/Main/Praktikum3?action=download&upname=yl3.4b.1.png)
...
![](https://courses.cs.ut.ee/2020/prog-alused/spring/Main/Praktikum3?action=download&upname=yl3.4b.2.png)
Kui olete juba hulk aega proovinud ülesannet iseseisvalt lahendada ja see ikka ei õnnestu, siis võib-olla saate abi murelahendajalt
. Püütud on tüüpilisemaid probleemseid kohti selgitada ja anda vihjeid.
Legend räägib, et malemängu leiutajale olla tollane valitseja pakkunud tasu. (Sellest legendist räägib ka Tõnu Tõnso paarikümne aasta taguses leheloos
.)
Leiutaja oli “tagasihoidlik” ja palus tasuks
- esimese ruudu eest 1 nisutera,
- teise ruudu eest 2 korda rohkem ehk 2,
- kolmanda ruudu eest veel 2 korda rohkem ehk 4,
- neljanda ruudu eest siis 8,
- viienda ruudu eest 16 jne
Malelaual on 64 ruutu.
Koostada programm, mis
- küsib kasutajalt ühe täisarvu;
- arvutab while-tsükli abil, mitu nisutera sellise järjekorranumbriga ruudu eest leiutaja küsis;
- tulemus väljastatakse ekraanile pärast tsüklit.
Näited programmi tööst:
![](https://courses.cs.ut.ee/2020/prog-alused/spring/Main/Praktikum3?action=download&upname=yl3.4c.1.png)
![](https://courses.cs.ut.ee/2020/prog-alused/spring/Main/Praktikum3?action=download&upname=yl3.4c.2.png)
Kui olete juba hulk aega proovinud ülesannet iseseisvalt lahendada ja see ikka ei õnnestu, siis võib-olla saate abi murelahendajalt
. Püütud on tüüpilisemaid probleemseid kohti selgitada ja anda vihjeid.