Materjalid koostas ja kursuse viib läbi
Tartu Ülikooli arvutiteaduse instituudi programmeerimise õpetamise töörühm
< eelmine | 4. nädala sisukord | järgmine > |
4.6 Kontrollülesanded IV
KONTROLLÜLESANDED IV
Neljandal nädalal tuleb esitada nelja kohustusliku ülesande lahendused. Neljanda ülesande puhul on võimalik valida lahendamiseks vähemalt üks järgmistest ülesannetest, kas 4a, 4b või 4c (võib ka kaks või kolm lahendada). Lahendused tuleb esitada Moodle'is, kus need kontrollitakse automaatselt. Moodle'is on ka nädalalõputest 10 küsimusega, millest tuleb vähemalt 9 õigesti vastata.
Kui teile tundub, et automaatkontroll töötab ebakorrektselt, siis palun kirjutage aadressil prog@ut.ee.
Kontrollülesanne 4.1. Mopeedid
2015. aastal registreeriti Eestis 685 uut mopeedi (http://www.stat.ee/34654). Kuude kaupa on arvud listis
registreeritud = [4, 22, 84, 130, 128, 108, 80, 59, 37, 19, 7, 7]
.
Koostada programm, mis
- küsib kasutajalt ühe täisarvu, mis tähistab kuud (jaanuar 1, veebruar 2 jne, võib eeldada, et arv paikneb lõigus 1 kuni 12);
- väljastab, mitu uut mopeedi sel kuul registreeriti.
Näide, mis täpsustab ka väljundit.
Palun sisestage, mitmes kuu:
2
2. kuul registeeriti 22 uut mopeedi.
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. Tegemist väga värske võimalusega, mille kohta ootame tagasisidet vastavas foorumis Moodle'is või aadressil prog@ut.ee.
Kontrollülesanne 4.2. Paaritute arvude summa (for)
Koostada programm, mis
- küsib kasutajalt positiivse täisarvu;
- arvutab for-tsükli ja funktsiooni range() abil summa, milles liidetavad on paaritud arvud alates 1 kuni paaritu arvuni, mis pole suurem kui sisestatud arv;
- väljastab saadud summa pärast tsüklit (võib ka selgitava tekstita).
Näiteks, kui kasutaja sisestas 7, siis paaritute arvude summa on 16, sest 1 + 3 + 5 + 7 = 16. Kui kasutaja sisestas 8, siis on summaks samuti 16, sest 1 + 3 + 5 + 7 = 16.
Tegemist on ülesande 3.2 variandiga for-tsükli jaoks.
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. Tegemist väga värske võimalusega, mille kohta ootame tagasisidet vastavas foorumis Moodle'is või aadressil prog@ut.ee.
Kontrollülesanne 4.3. Konto väljavõte
Failis konto.txt on kirjas ujukomaarvudena pangakonto tehingud. Iga arv on eraldi real. Faili võite võtta siit või ise teha näiteks tekstiredaktoriga (kasvõi Thonnyga). Faili kasutamiseks programmi sees peab fail asuma programmifailiga samas kaustas.
Koostada programm, mis
- küsib kasutajalt faili nime (kasutaja peab sisestama nime koos laiendiga, nt konto.txt);
- loeb failist andmed;
- väljastab ekraanile kõik failist leitud positiivsed arvud ehk sissetulekud. Iga arv peab olema eraldi real ja positiivsete arvude omavaheline järjekord peab jääma samaks, mis failis oli.
Näiteks antud näitefaili konto.txt puhul peab ekraanile ilmuma
100
18.67
86.23
0.03
531.67
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. Tegemist väga värske võimalusega, mille kohta ootame tagasisidet vastavas foorumis Moodle'is või aadressil prog@ut.ee.
Järgmisest kolmest ülesandest (4.4a, 4.4b, 4.4c) tuleb lahendada vähemalt üks.
Kontrollülesanne 4.4a Viktoriin
Failis on
- 1. real küsimus;
- 2. real vastuste arv;
- 3. real mitmes vastus on õige;
- järgmistel ridadel on vastusevariandid;
Koostada programm, mis
- küsib kasutajalt failinime (kasutaja sisestab failinime koos laiendiga, nt viktoriin.txt);
- esitab selles oleva küsimuse koos vastusevariantidega kasutajale;
- kontrollib, kas vastus oli õige (kui vastus on õige, siis peab väljundis leiduma sõna "õige", vastasel juhul "vale")
Näide
Olgu failis viktoriin.txt järgmised read. Selle faili saab siit.
Milline on kauneim linn Eestis (vähemalt R. Valgre laulu järgi)?
5
4
Haapsalu
Kuressaare
Pärnu
Tartu
Viljandi
Programmi töö võib välja näha nii.
Palun sisestage failinimi
viktoriin.txt
Milline on kauneim linn Eestis (vähemalt R. Valgre laulu järgi)? 1. Haapsalu 2. Kuressaare 3. Pärnu 4. Tartu 5. Viljandi
4
Tubli! Õige vastus!
Või nii.
Palun sisestage failinimi
viktoriin.txt
Milline on kauneim linn Eestis (vähemalt R. Valgre laulu järgi)? 1. Haapsalu 2. Kuressaare 3. Pärnu 4. Tartu 5. Viljandi
3
Kahjuks on see vale vastus!
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. Tegemist väga värske võimalusega, mille kohta ootame tagasisidet vastavas foorumis Moodle'is või aadressil prog@ut.ee.
Kontrollülesanne 4.4b Kümnevõitslus
Noor mitmevõistleja on sel aastal kümnevõistluse läbinud kaks korda ja alade kaupa saadud punktid on järjendites
käärikul = [401, 604, 547, 700, 722, 845, 621, 490, 800, 700]
ja
kohilas = [900, 0, 333, 803, 838, 400, 467, 488, 432, 700]
.
Koostada programm, mis
- koostab nende järjendite põhjal paremate tulemuste järjendi, milles igale kohale võetakse vastav parem tulemus (näitejärjendite puhul algab paremate tulemuste järjend [900, 604 ... ;
- väljastab ekraanile paremate tulemuste järjendi ja paremate tulemuste järjendi elementide summa.
NB! Programm peab töötama kõikide seesuguste täisaarvujärjenditega, mis on pikkusega 10.
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. Tegemist väga värske võimalusega, mille kohta ootame tagasisidet vastavas foorumis Moodle'is või aadressil prog@ut.ee.
Kontrollülesanne 4.4c Tahvli juurde
Mõned õpetajad on tavatsenud õpilasi tahvli juurde vastama kutsuda kuupäeva järgi vastavalt õpilaste nimekirjale. Näiteks 4. kuupäeval tuleb esimesena vastama nimekirjas 4. olev õpilane. Failis nimekiri.txt on õpilaste nimed, igaüks eraldi real. Üks selline, mis on genereeritud leheküljel http://random-name-generator.info/, on siin. Võite ise teha ka teise nimekirja.
Koostada programm, mis
- küsib failinime (eeldame, et selline fail on ja seal on vähemalt 31 nime);
- väljastab vastavalt kuupäevale, kes peab vastama tulema.
Programm peab tänase kuupäeva leidma automaatselt, aluseks saab võtta järgmise näite:
from datetime import * print(datetime.now().day)
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. Tegemist väga värske võimalusega, mille kohta ootame tagasisidet vastavas foorumis Moodle'is või aadressil prog@ut.ee.
< eelmine | 4. nädala sisukord | järgmine > |