Institute of Computer Science
  1. Courses
  2. 2019/20 spring
  3. Introduction to Programming (MTAT.03.236)
ET
Log in

Introduction to Programming 2019/20 spring

  • Pealeht
  • Loengud
  • Moodle
  • Thonny paigaldamine
  • Thonny logide esitamine
  • Kiireksamist
  • Viited

Viienda nädala kontrollülesanded

Enne 5. praktikumi tuleb esitada kolme kohustusliku ülesande lahendused. Lahendused tuleb esitada Moodle'is, kus need kontrollitakse automaatselt.

Kontrollülesanne 5.1. Bänner

Erinevates poodides ja veebikauplustes võib kohata reklaame, mis kutsuvad inimesi ostlema. Reklaamimiseks kasutatakse näiteks bännereid, mis soovitud reklaamlauset korduvalt kuvavad.

Esmalt koostada funktsioon banner, mis

  1. võtab argumendiks reklaamlause, mida soovitakse kuvada;
  2. tagastab reklaamlause, kus kõik tähed on suured tähed.

Näide banner funktsiooni rakendamisest:

Teiseks koostada programm, mis

  1. küsib kasutajalt, mitu korda soovitakse reklaamlauset kuvada;
  2. küsib kasutajalt, millist reklaamlauset soovib kasutada;
  3. rakendab tsükli abil kasutaja sisestatud arv kordi funktsiooni banner, kus igal tsükli sammul tuleb funktsioon välja kutsuda argumendiga, milleks on kasutaja sisestatud reklaamlause;
  4. väljastab loodud tsükli abil reklaamlause kasutaja sisestatud arv kordi.

Funktsiooni kirjelduses ei ole tsüklit, vaid funktsiooni kasutatakse tsükli kehas.

NB! Funktsiooni nimi peab olema täpselt see, mis on ülesandes ette antud.

Näide programmi tööst:

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 5.2. Kartulid

Juhan pani sügisel seemnekartuli ülejäänud saagist eraldi, aga ta teab, et seda on tal liiga palju ja osa võiks söögiks tarvitada. Kuna kevad läheneb, siis soovib ta välja arvutada, mitu kilo seemnekartulit tal tegelikult kulub, kui ta paneb 4 mugulat meetrile ja ühes kilos on 12 kartulit.

Koostada funktsioon kartulid, mis

  • võtab argumendiks vao pikkuse meetrites,
  • arvutab selle põhjal, mitu kilo kartuleid kulub ühe vao kohta,
  • tagastab kartulite koguse kilogrammides ühe vao kohta (ümardatuna sajandikeni).

Ühe vao jaoks vajaminevat kartulite kogust saab arvutada järgmise valemi abil: (kartulite kogus kilogrammides) = (vao pikkus meetrites) * 4 / 12

Tagastatud kartulite kogus peab olema arvutatud kahe komakoha täpsusega. Ümardamist peab sooritama funktsioon ise ja selleks tuleb kasutada funktsiooni round.

Näide funktsiooni tööst:

Lisaks koostada programm, mis

  • küsib kasutajalt
    • vagude pikkust (meetrites täisarvuna),
    • vagude arvu,
  • arvutab funktsiooni kartulid rakendades, mitu kilo kartuleid on vaja kõikide vagude peale kokku,
  • väljastab vajamineva kartulite koguse ekraanile.

Oluline on, et kartulite koguse arvutamise funktsioon ise ei küsiks kasutajalt midagi ja see funktsioon ise ka ei väljastaks tulemust ekraanile. Need tegevused peab tegema programmis väljaspool funktsiooni, funktsiooni töö on vaid arvutada.

NB! Funktsiooni nimi peab olema täpselt see, mis on ülesandes ette antud.

Näited programmi tööst:

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 5.3. Peo eelarve

Juubelile on kutsutud hulk inimesi, kellest osa on teatanud, et nad tulevad ja ülejäänute kohta ei ole midagi teada. Peo eelarve koosneb kahest osast: söök ja ruumi rent. Söögi peale arvestatakse iga osaleja kohta 10 eurot. Ruumi rent ei sõltu osalejate arvust ja on vaikimisi 55 eurot. Planeerimiseks on vaja programmi, mis arvutab

  • maksimaalse eelarve (arvestades, et kõik kutsutud inimesed tulevad kohale) ja
  • minimaalse eelarve (arvestades, et kohale tulevad ainult need, kes on juba seda teatanud).

Esmalt koostada funktsioon eelarve, mis

  1. võtab argumendiks külaliste arvu tähistava täisarvu ja lisaargumendina ruumi rendi, mis on ümardatud täiseurodeks (vaikimisi on rent 55);
  2. arvutab selle põhjal eelarve kogusumma;
  3. tagastab eelarve kogusumma. Näiteks argumendiga 5 tagastab funktsioon arvu 105.

Teiseks koostada programm, mis

  1. küsib kasutajalt kutsutud inimeste arvu;
  2. küsib kasutajalt inimeste arvu, kes on juba tulemisest teatanud;
  3. küsib kasutajalt ruumi rendi (täisarvuna, vaikimisi 55);
  4. arvutab ja väljastab ekraanile maksimaalse eelarve, kasutades koostatud funktsiooni eelarve;
  5. arvutab ja väljastab ekraanile minimaalse eelarve, kasutades koostatud funktsiooni eelarve.

Näited programmi tööst:

Lugege vaikeväärtus sõnena ja kontrollige selle tühjust. Alternatiivina võib kasutada veatöötlust try-except.

  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment