Praktikum nr 11 Tegeleme esimesed 30 minutit paari uue teemaga, mida kontrolltöös vaja EI ole. Ülesanne 0 Rekursioon ja faktoriaal Rekursiivne funktsioon. Uurime lühidalt, kuidas ta käitub. Kodus mõtlemiseks veel kaks ülesannet, mis aitavad loodetavasti järgmisel nädalal kahemõõtmelise listiga paremini hakkama saada. Ülesanne 1 Tärnid Moodusta ekraanile tärnidest ruut. Tärnide arvu ruudu külgede jaoks sisestab kasutaja. Näiteks kui ruudu külg on 5, siis ekraanile ilmub: ***** ***** ***** ***** ***** Pythonis saame ka lihtsamalt, aga järgnevate ülesannete huvides kasutame tsükleid, mille sees väljastatakse vaid üks *. Ehk print("*"). Muu jääb tsüklite hooleks. Soovitused: Et trükkida mitme print-lausega samale reale, tuleb print lauses kasutada parameetrit end="". Näiteks print(a, end="") trükib ekraanile a väärtuse ja jätab rea vahetamata, st järgmine väljund tuleb a järgi, samale reale. "end"-parameetri abil saab määrata sümboli, mis lisatakse väljatrüki lõppu. Vaikimisi on selleks sümboliks reavahetus. St peale iga väljatrükki tehakse (on seni tehtud) reavahetus. Ülesanne 2 Korrutustabel Trüki programmi abil ekraanile korrutustabel kujul: 1 2 3 4 5 6 7 8 9 10 _______________________________________________________________ 1 | 1 2 3 4 5 6 7 8 9 10 | 2 | 2 4 6 8 10 12 | 3 | 3 6 9 12 15 | 4 | | 5 | jne. 6 | 7 | 9 | 10 | | ________________________________________________________________ Soovituslik tegevuste järjekord: 1. Moodusta sobivad tegurite paarid. Pane kaks range()-funktsiooni kasutavat for-tsüklit teineteise sisse (nagu tärnide trükkimise ülesandes) ja vaata, milliseid väärtuseid on tsüklimuutujatel. 2. Korruta tegurid. 3. Saavuta tabelilaadne kuju (formaadiga väljatrükk, kasutades välja laiust, vt näidet n2/valjund_7.py). 4. Lisa tabelile igasugused päised. Kontrolltöö Ülesanded ja andmefail on lingitud tundide tabelisse. Lahenduses kasuta kindlasti liste. Arvesta, et listifunktsioonidest ja -meetoditest võid kasutada vaid append()-i andmete lisamiseks ja len()-i listi pikkuse küsimiseks. Ehkki toodud faili juures ei tohiks selleks vajadust olla. Lisaks püüa ka vältida liigsete listide tegemist (ja andmete dubleerimist). Need tingimused on olulised ennekõike eksamil. Valmis tööle pane nimeks oma nimi ja variandi number (maali_maasikas_1.py) ning laadi see Drive'i kausta.