230819IFIFB.DT Tulemus õige. Üksteist välistavate tingimuste korral kasutada pigem if..else, mitte kahte sõltumatut if-i. Igaks juhuks juhin tähelepanu, et eksamil pole listifunktsioonid lubatud (nt sum()). 230469IFIFB.DT 230783IFIFB.DT Failide lugemisega tuleb veel tööd teha. Samuti süveneda listide töötlemisse, sest igasugused spetsiifilised listifunktsioonid ei ole eksmaitöös aktsepteeritud. 230730IFIFB.DT 230784IFIFB.DT 230584IFIFB.DT Vale variant. Täpsemalt ei saagi aru, millist oled teinud. Vist kolmandat? Originaalandmefailiga saan indexErrori. Funktsioon eval() on kuulutatid ebasoovitavaks, sest see vaatab liiga palju ise, millisesse andmetüüpi tulemus teisendada. Summa leidmine töötab juhul, kui failis on järjest kõik kuupäevad. Päris õigesti ka ei tööta ka, sest paaris ja paaritu lähevad sassi. Kuupäeva uurimiseks tuleks siiski kasutada eraldi kuupäevade listi, mitte temperatuuride listi indekseid. 230818IFIFB.DT Tulemus on õige. Juhin igaks juhuks tähelepanu sellele, et erinevate listifunktsioonide kasutamine ei ole eksamil aktsepteeritud ning ülkdse peaks tööd tegema listidega, mitte sõnastikega (dictionary). 220515IFIFB.DT Korras. 230801IFIFB.DT 230545IFIFB.DT Paarisarvu tuvastamine õnnestub. Nüüd tuleks läbi mõelda, kuidas andmeid kahes listis koos kasutada. Uues versioonis on loetud kaks korda faili. Proovi läbi mõelda ka see, kuidas tööks liste kasutada peale ühekordset failist andmete lugemist (mitmekordne faili lugemine on ebaefektiivne). 230627IFIFB.DT 230547IFIFB.DT 231253IFIFB.DT Milleks sorteerid paarixkuupäevade temperatuuriode listi? Ühelt poolt pole seda vaja, teisalt on tegemist eksamil mitteaktsepteeritava funktsiooni kasutusega. Aritmeetilise keskmise leimiseks tuleks kõik paarispäevade tempertuurid kõigepealt kokku liita. 220850IFIFB.DT 220978IFIFB.DT 221043IFIFB.DT Maksimumi leidmine ei kulge õigesti. Õige tulemus tuleb vaid seetõttu, et viimane negatiivne temperatuur on ühtlasi juhuslikult ka kõige suurem negatiivne temperatuur. 230641IFIFB.DT 230879IFIFB.DT Ülesande lugemine jäi veidi poolikuks – keskmine tuli leida paaris kuupäevadest. Soovitan koodis kasutada selgeid keelelauseid (for, if jne) ja mitte neid ühte puntrasse siduda, mida Pythoni keel tõesti võimaldab. 230940IFIFB.DT Tulemus on kenasti leitud, vahemikku õigesti kontrollitud. Vaadates eksami suunas, siis sum()-funktsiooni kasutamine ei ole seal aktsepteeritav (KT kirjelduses olid ka vihjed selle kohta). 230662IFIFB.DT 221036MLBB.LT Variandi arvutus ei vasta juhendile. Jääk oli vaja leida 6-ga jagades. Nüüd lahendusest. See ei ole korrektne. Mõtle läbi, kuidas võtad summa leidmise tsüklis temperatuure paaris kuupäevadele vastavusse ehk mida teeb täpsemalt indeks I. Summa ei tule õige. Üldises plaanis on korras. 230633IFIFB.DT 230992IFIFB.DT Vale variant. Kõiki leitud temperatuuriga kokkusobivaid kuupäevi ei ole põhjust korduvalt otsida. Seda on mõistlik teha siis, kui lõplik warmestColdTemp on käes. Tulemus on õige. 230498IFIFB.DT Tulemus tuleb õige. Aga seda antud juhul vaid tänu sellele, et pead tegelema negatiivsete temperatuuridega. Kui oleks vaja positiivsete temperatuuride keskmist, siis vaid if-lause märgi muutmisega hakka ei saa. Ehk oled listi data kokku pannud nii kuupäevad kui temperatuurid ja see ei ole kokkuvõttes eriti jätkusuutlik. 230589IFIFB.DT 230548IFIFB.DT Kui tead andmete hulka, siis on see osa programmist except IndexError: I += 1 üsna arusaamatu. Õige tulemuse saad kätte. 220866IFIFB.DT Tulemus on kenasti leitud, vahemikku õigesti kontrollitud. Vaadates eksami suunas, siis sum()-funktsiooni kasutamine ei ole seal aktsepteeritav (KT kirjelduses olid ka vihjed selle kohta). 230538IFIFB.DT Vale variant - 230538 & 6 ei ole jäägi leidmise tehe. Uuri välja, mida teeb operaator &! Tore, et oled leidnud üles statistika mooduli. Arvesta aga palun sellega, et eksamil pead oskama liste ise töödelda, mitte kasutada erinevaid mooduleid ja funktsioone. 230694IFIFB.DT Keskmise leidmiseks ie ole vaja selles ülesandes loendada (temp_nr += 1), sest see arv tuleb alati sama kuupäevade arvuga :) Aga üldiselt korras. 230424IFIFB.DT Vale variant. Valitud variandi õige tulemus on leitud. Arvuti on küll tubli, aga ülearust tööd ei ole põhjust last atal teha. Kus on Sinu programmis liigselt korratav tsükkel, mida võiks tegelikult ühe korra läbi teha? Ja muutujate nimedest ka: I ja j on on omal kohal indeksitena, aga mitte suurenate andmestikena. 232348IFIFB.DT Variandi number ei ole õigesti leitud. Tulemus on õige. Igaks juhuks juhin tähelepanu, et sum()-funktsioon (jt spetsiifilised listi funktsioonid) ei ole eksamil lubatud. 220698IFIFB.DT 230990IFIFB.DT Üldiselt korras. Aga kas proovisid oma programmi ka siis, kui külmakraadid puuduvad? Soovitan soojalt ära proovida / testida. 230570IFIFB.DT 230500IFIFB.DT Tulemus on korras. Aga palun arvesta, et eksamil tuleb demonstreerida oma oskust listi element-haaval töödelda ja igasugused listifunktsioonid ei ole lubatud (oli kirjas ka praegu tunni tekstis, kus ta küll võis kahe silma vahele jääda.). 230621IFIFB.DT Lahendus on leitud. Mõned kommentaarid siiski. Listi pikkust ei ole põhjust for-tsüklis korduvalt leida. Poole pikkusega jagamine ei ole korrektne. Nimelt ei pea andmefail olema täpselt selline (nagu ka ülesandes kirjas oli). Eriti kehtib see aga paaris/paaritu tuvastamise kohta, kus ei tohiks lähtuda mitte andmerea indeksist, vaid uurida siiski konkreetset kuupäeva. Palun ära ümarda poole programmi peal. Säilita töö vältes võinmalikult suur täpsus. Ja lisaks vihjan veel, et tervete listide korraga väljastamine vastusena on nn “must väljatrükk”, millest eksamil tuleks pigem hoiduda. Kontrollväljatrükid emda jaoks – seal on mudiugi terve listi trükkimine OK. 230965IFIFB.DT 230806IFIFB.DT Tulemus on korras. Aga palun arvesta, et eksamil tuleb demonstreerida oma oskust listi element-haaval töödelda ja igasugused listifunktsioonid ei ole lubatud (oli kirjas ka praegu tunni tekstis, kus ta küll võis kahe silma vahele jääda.). 230795IFIFB.DT Tulemus on leitud. Igaks juhuks mainin, et eksamil tuleb demonstreerida oma oskust listi element-haaval töödelda ja igasugused listifunktsioonid ei ole lubatud. Terve listi väljastamine vastusena on nn “must väljatrükk”, millest samuti palun eksamil hoiduda. 220675IFIFB.DT 170812HIFIB.HT 230824IFIFB.DT Vale variant. Aga muidu korras. 230789IFIFB.DT Ülesande lugemine jäi veidi poolikuks – keskmine tuli leida paaris kuupäevadest. Soovitan koodis kasutada selgeid keelelauseid (for, if jne) ja mitte neid ühte puntrasse siduda, mida Pythoni keel tõesti võimaldab. Mida üritad siin tuvastada: if keskmine_temperatuur is not None ? Ja lõpuks juhin tähelepanu, et eksamil tuleb hakkama saada spetsiaalsete listifunktsioonideta (nt sum()) 230507IFIFB.DT Tulemus on korras. Aga palun arvesta, et eksamil tuleb demonstreerida oma oskust listi element-haaval töödelda ja igasugused listifunktsioonid ei ole lubatud (oli kirjas ka praegu tunni tekstis, kus ta küll võis kahe silma vahele jääda.). 230568IFIFB.DT Lahendus korras. Muutujanimedest – kui teed for-tsüklis range()-ga indeksid, siis on tsüklimuutuja nimi I OK. Kui aga võtad listist järjest andmeid ja paned tsüklimuutujasse, võiks tema nimi olla sisukam ehk siis nt temperatuur, mitte I. 230551IFIFB.DT 230773IFIFB.DT Nagu tekstifaili selgituses kirjas oli – kuupäevad ei pruugi alata 1-st ja olla järjest. Seega indeksit ei tohiks kontrollida kuupäeva asemel (if k % 2 != 0). Ära ümarda enne kui alles vastust trükkides. Aga üldiselt korras. 230885IFIFB.DT Muutujanimi asi ei ole kõige kirjeldavam. Mida leiad siin: kesk=int(kokku/15)? Lisaks int()-funktsiooniga teisendamine ei ole hea mõte. See on tunduvalt halvem kui lihtsalt ümardamine. Ja lisaks ei leita programmiga summat. Faili selgituses oli öeldud, et kuupäevad ei pruugi niimoodi kenasti järjest joosta, nagu nad seekord seal olid. Seega temperatuuride võtmine lihtsalt üle ühe ei ole OK. Jälgida tuleks pigem kuupäeva. Kasulik on võtta nüüd see programm ette ja käia ta debug-režiimis üle ning toimuv läbi mõelda. 230645IFIFB.DT Ära ümarda keskmist seni, kuni teda kasutad. Eriti ära ümarda seda täisavuni! Ümardamise koht on väljatrükilauses. Tulemus leitud õigesti. Aga kui keskmisest madalamaid temperatuure ei ole, ei teki ka muuutjat keskmadalam. Nüüd tuleb veel uurida tööd failidega. 230592IFIFB.DT 238253FAY 220554IFIFB.DT 210813MLBB.LT 210941MLBB.LT 238248FAY 230610IFIFB.DT 220852IFIFB.DT 230677MLMB.DT 230805MLMB.DT 230553MLMB.DT 220442MLMB.DT 230601MLMB.DT 230756MLMB.DT Tulemus õige. Soovitan siiski läbi mõelda, mis jutuks, kui andmestikus ei oleks ühtegi negatiivset temperatuuri :) 230915MLMB.DT 220813MLMB.DT 230455MLMB.DT 230708MLMB.DT 238157FAY Variant oleks pidanud 6 olema. Süntaksiveast ei õnnestunud vabaneda. Kui see korda teha, siis keskmine selgub. Siiski keskmise leidmiseks ei ole õige kasutada täisarvulist jagamist (mis vahe on jagamismärkidel / ja //?). Päris õige ei ole ka erinevuse leimine keskmisest – see saab olla mõlemale poole keskmist ehk siis kontrollida tuleks vahemikku. Aga üldiselt on suund õige. 230755MLMB.DT 230697MLMB.DT 230440MLMB.DT Nii failide lugemise kui ka listidega töötamise teemadesse tuleb veel süveneda. 220936GRENB.HT Tulemus on õigesti leitud. Vaadates eksami suunas, siis zip(), kui spetsiifileine listifunktsioon ei ole seal aktsepteeritud. Tasub mõelda, kuidas kasutada indekseid listide andmete seostamiseks. 230827MLMB.DT Töö failidega tuleb läbi mõelda. Välja kommenteeritud paarisarvu kontroll on õige. Aga kus on nüüd need paarisarvud, mida kontrollida? Päevade listis! Mus osas korras. 220989MLMB.DT 220976MLMB.DT 230733MLMB.DT Ülesanne ei ole päris õigesti mõistetud. Tegelikult on vaja leida kõige nullilähedasem temperatuur negatiivsete temperatuuride hulgast (ehk suurm negatiivsete hulgast). Kõige madalam temperatuur on õigesti leitud. 230451MLMB.DT Vale variant. Keskmine on õigesti leitud. Kui aga külmakraade poleks, siis tuleks programmi töös viga. 230705MLMB.DT Korras. 230669MLMB.DT 230710MLMB.DT Saad õige tulemus kätte. See on siiski praegu juhus. Mõtle läbi, mida programm täpsemalt teeb maksimumiga võrdlemise tsüklis, mis on seal i väärtus (debug-režiim aitab uurida)! Igaks juhuks ka mainin, et eksamil ei ole lubatud kasutada spetsiifilisi listi-funktsioone. 231005MLMB.DT Korras. 230860MLMB.DT Faili selgituses on öeldud “tekstifaili esimesel real päevade arv”. Seega 31 ei olnud seal kogemata, vaid tal on tähendus. Aga aitäh, et tema kustutamisest teada andsite! Tulemus tuleb õige. Soovitan siiski üle vaadata suurima (ja vähima) väärtuse leidmise, sest praegu tuleb see õigesti välja vaid täiesti juhuslikult (kuna kaks suuremat on järjest). Ja algoritm on tunduvalt lihtsam. 230845MLMB.DT 230543MLMB.DT 230646MLMB.DT 231233MLMB.DT 220947MLMB.DT Vale variant. Lahendus õige. 230599MLMB.DT Korras.