Pythoni Turtle moodul ja Scratchi värvilisem pool Plaan Isikukoodi kontrollnumbri leidmine vaatame üle lahenduse kontrollnumbri leimiseks. Pythoni joo

Seotud dokumendid
Microsoft Word - 56ylesanded1415_lõppvoor

Pintsli otsade juurde tegemine Esiteks Looge pilt suurusega 64x64 ja tema taustaks olgu läbipaistev kiht (Transparent). Teiseks Minge kihtide (Layers)

6. KLASSI MATEMAATIKA E-TASEMETÖÖ ERISTUSKIRI Alus: haridus- ja teadusministri määrus nr 54, vastu võetud 15. detsembril E-TASEMETÖÖ EESMÄRK Tas

Kom igang med Scratch

PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019

ArcGIS Online Konto loomine Veebikaardi loomine Rakenduste tegemine - esitlus

01_loomade tundmaõppimine

lvk04lah.dvi

Microsoft Word - Toetuste veebikaardi juhend

loogikaYL_netis_2018_NAIDISED.indd

PowerPoint Presentation

Image segmentation

Funktsionaalne Programmeerimine

Võistlusülesanne Vastutuulelaev Finaal

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx

Sissejuhatus mehhatroonikasse MHK0120

NR-2.CDR

6

Matemaatilised meetodid loodusteadustes. I Kontrolltöö I järeltöö I variant 1. On antud neli vektorit: a = (2; 1; 0), b = ( 2; 1; 2), c = (1; 0; 2), d

Otsinguteavituse esitamine Kultuurimälestiste riiklikus registris 1. Mine aadressile: ja vajuta nuppu Kodanikule. 2. Sisene

Statistikatarkvara

Ülesanne #5: Käik objektile Kooli ümberkujundamist vajava koha analüüs. Ülesanne #5 juhatab sisse teise poole ülesandeid, mille käigus loovad õpilased

Projekt: Sööbik ja Pisik Tartu Lasteaed Piilupesa Koostajad: Merelle Uusrand ja Ülle Rahv Sihtgrupp: 4 5aastased lapsed Periood: veebruar märts 2017 P

Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier

raamat5_2013.pdf

IFI6083_Algoritmid_ja_andmestruktuurid_IF_3

Mining Meaningful Patterns

Microsoft Word - VOTA_dok_menetlemine_OIS_ doc

IMO 2000 Eesti võistkonna valikvõistlus Tartus, aprillil a. Ülesannete lahendused Esimene päev 1. Olgu vaadeldavad arvud a 1, a 2, a 3,

Microsoft Word - VG loodus

6

Andmed arvuti mälus Bitid ja baidid

Microsoft PowerPoint - loeng2.pptx

Matemaatika ainekava 8.klass 4 tundi nädalas, kokku 140 tundi Kuu Õpitulemus Õppesisu Algebra (65 t.) Geomeetria (60 t.) Ajavaru kordamiseks (15 õppet

loeng7.key

Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Dian

Tiia Salm 2011 Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pd

CSS juhend

VL1_praks6_2010k

Valik harjutusi eesti keele postkaartide jaoks Tervitused ja hüvastijätud Grupp töötab paarides, harjutab fraase ja täiendab kaardil olevat veel omapo

1. Üliõpilased 1.1 Tõendid Vali menüüst: Üliõpilased tõendid tõendite trükkimine. Avaneb vorm Tõendite trükkimine, vali tõendi liik Tõend õppim

Tartu Kutsehariduskeskus IKT osakond Merlis Karja-Kännaste ASUTUSE DOKUMENDIREGISTRI AVALIK VAADE Analüüs Juhendaja Mirjam-Merike Sõmer Tartu 2015

Treeningvõistlus Balti tee 2014 võistkonnale Tartus, 4. novembril 2014 Vastused ja lahendused 1. Vastus: 15, 18, 45 ja kõik 0-ga lõppevad arvud. Olgu

Skriptid ja käsud

efo03v2pkl.dvi

Praks 1

Matemaatiline analüüs IV 1 3. Mitme muutuja funktsioonide diferentseerimine 1. Mitme muutuja funktsiooni osatuletised Üleminekul ühe muutuja funktsioo

Infix Operaatorid I Infix operaatorid (näiteks +) ja tüübid (näiteks ->) kirjutatakse argumentide vahele, mitte argumentide ette. Näiteks: 5 + 2, 2*pi

Tõstuksed Aiaväravad Tõkkepuud Automaatika KÄIGUUKSED Käiguuksed on paigaldatavad kõikidele sektsioonuste tüüpidele. Käiguukse saab varustada kas tava

Kuidas vahetada esimesi suspensiooni vedrusid autol VOLKSWAGEN TOURAN 1

Manuals Generator

(Microsoft Word - T\366\366leht m\365isaprogramm 4-6 kl tr\374kkimiseks.doc)

StandardBooks_versiooni_uuendusWin

Saksa keele riigieksamit asendavate eksamite tulemuste lühianalüüs Ülevaade saksa keele riigieksamit asendavatest eksamitest Saksa keele riigi

GRUPI-SMS Veebirakenduse kasutamise juhend Rakendus Elisa grupi-smsi rakendus Väljaandja Elisa Eesti AS Juhendi koostamise kuupäev Versioon

ДЕЛОВОЕ ОБЩЕНИЕ

Praks 1

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad

Microsoft Word - Keypad-controller-manual-new_1.docx

Excel Valemite koostamine (HARJUTUS 3) Selles peatükis vaatame millistest osadest koosnevad valemid ning kuidas panna need Excelis kirja nii, et

Eesti koolinoorte LIII matemaatikaolümpiaad 28. jaanuar 2006 Piirkonnavoor Hindamisjuhised Lp hindaja! 1. Juhime Teie tähelepanu sellele, et alljärgne

Kiekim mees kirjeldus.docx

Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: G

Keemia koolieksami näidistöö

A5_tegevus

Pealkiri

Microsoft Word - HOTSEC kasutusjuhend v1.900.docx

Microsoft PowerPoint - Meisterdused metsa teemal

I klassi õlipüüdur kasutusjuhend

loeng2

Programmi AnimatorDV Simple+ lühike kasutajajuhend

(Microsoft Word - T\366\366leht m\365isaprogramm algklassilastele tr\374kk 2.doc)

Microsoft Word - P6_metsamasinate juhtimine ja seadistamine FOP kutsekeskharidus statsionaarne

Vastuvõtt 10.klassidesse 2016/2017

prakt8.dvi

Microsoft Word - TallinnLV_lihtsustatud_manual_asutuse_juhataja_ doc

8.klass 4 tundi nädalas, kokku 140 tundi Hulkliikmed ( 45 tundi) Õppesisu Hulkliige. Hulkliikmete liitmine ja lahutamine ning korrutamine ja jagamine

Microsoft Word - requirements.doc

Fyysika 8(kodune).indd

DVD_8_Klasteranalüüs

Mida me teame? Margus Niitsoo

Microsoft Word - Karu 15 TERMO nr 527.doc

4. KIRURGIA Üliõpilase andmed. Need väljad täidab üliõpilane Praktikatsükli sooritamise aeg Kirurgia praktikatsükkel Ees- ja perekonnanimi Matriklinum

Orbiidile! hooaja info

FRESENIUS ÕPPEKESKUS KIIRJUHEND

Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimu

Sügis 2018 Kõrgema matemaatika 2. kontrolltöö tagasiside Üle 20 punkti kogus tervelt viis üliõpilast: Robert Johannes Sarap, Enely Ernits, August Luur

EDL Liiga reeglid 1. ÜLDSÄTTED 1.1. EDL Liiga toimub individuaalse arvestuse alusel, kus mängijad on jagatud hooaja EDL Liiga tulemuste põhj

MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite l

Microsoft PowerPoint - loeng.ppt

Kursuseprogramm IFI6054 Agiilne tarkvaraarendus 3 EAP Kontakttundide maht: 28 Õppesemester: K Eksam Eesmärk: Aine lühikirjeldus: (sh iseseisva töö sis

IT infrastruktuuri teenused sissejuhatav loeng 00

Tala dimensioonimine vildakpaindel

Tartu Ülikool

Tarbijamängu Saa Kinder Bueno fotomodelliks reeglid 1. TOODETE TURUSTAJA: Mobec AS, registrinumber , aadress: Kurekivi tee 6, Rae vald, Harjum

Vana talumaja väärtustest taastaja pilgu läbi

Funktsionaalne Programmeerimine

Õppeprogramm „vesi-hoiame ja austame seda, mis meil on“

Õppekava vorm 1. Õppekava nimetus Küberturbe tehnoloogiad 2. Õppekava nimetus inglise Cyber Security Engineering keeles 3. Kõrgharidustaseme õpe Raken

Väljavõte:

Pythoni Turtle moodul ja Scratchi värvilisem pool Plaan Isikukoodi kontrollnumbri leidmine vaatame üle lahenduse kontrollnumbri leimiseks. Pythoni joonistamise võimalused Turtle mooduli abil. Scratchi s programmeerimine objekt-orienteerituse põhimõtteid kasutades, spraidid, liikumine Pythoni kilpkonnagraafika (moodul Turtle) Võid uurida lisaks Logo ajalugu (https://en.wikipedia.org/wiki/logo_(programming_language)), mida on peetud ka algselt lastele programmeerimise tutvustamise abivahendiks. Pythoni Turtle mooduli joonistamine töötab Logole sarnaselt. Järgnevas tekstis mainitud näiteprogrammid leiad kursuse veebilehelt lingi Turtle näited alt. Juhuslikud arvud Mängude ja muidu lõbusate asjade tegemiseks on tihti abi juhuslikest valikutest. Juhuslike valikute tegemiseks aitavad kaasa juhuslikud arvud. Nende arvude väljaarvutamiseks on matemaatikas mitmeid teooriaid. Seega pole nad midagi nii väga juhuslikud. Õigem ongi neid kutsuda pseudojuhuslikeks arvudeks. Funktsioonid juhuslike arvude tegemiseks tuleb eelnevalt vastavast moodulist importida: from random import * Moodulis random on palju funktsioone, kuid kasulikumad võiksid olla: randint(algus,lõpp) - täisarv antud vahemikust choice(list) - list on väärtuste jada (arvud, stringid jms), valitakse suvaline nendest shuffle(list) - vahetab etteantud listi elemendid suvalisse järjekorda Tekitame listi nimega v2rvid: v2rvid = ['red','blue','green','magenta'] Laseme arvutil valida loetelust juhuslikult ühe värvi: v2rv = choice(v2rvid) Laseme arvutil valida juhusliku arvu vahemikus 1-st 100-ni: juhuslik_arv = randint(1,100)

Turtle moodul Ka terve "kilpkonnagraafika" funktsioonikogu on eraldi moodulis. Funktsioonid tuleb importida: from turtle import * Joonistatakse pliiatsiga (pen, mis on nagu kilpkonna saba). Kui saba on maas (down()), jääb jälg, kui saba üleval (up()), siis jälge ei jää. Joonistamine: variant 1. Kilpkonn liigub soovitud suunas. Kilpkonnal on nö suund. Kui kilpkonnale öelda liigu edasi 50 pikslit, siis ta liigub selles suunas, kuhu pea näitab. Kilpkonn saab ka liikuda tagasi (forward(), backward(), ka fd(), bk()). Kilpkonna saab pöörata praeguse suuna suhtes (right(), left(), ka rt(), lt()), andes ette pöördenurga kraadides (vaikimisi) või radiaanides. Näiteks joonistame täisnurga: forward(100) # Liigu edasi 100 pikslit left(90) # Pööra vasakule 90º. forward(100) # Liigu edasi 100 pikslit Saab ka öelda, et keera pea sellesse või teise suunda sõltumata sellest, kuhu poole ta hetkel vaatab (setheading()). setheading(0) või setheading("east") keerab kilpkonna näoga paremale Peale kilpkonna pööramist hakkab ta liikuma uude suunda. Ülesanne 1 Lihtne liikumine Teeme koos numbri 2. Proovi ise joonistada tähti või numbreid, kujundades nad kandilistena. Nagu me näeme neid näiteks bensiinijaamade tabloodel. Sellise meetodi abil saab joonistada kujundeid polaarkoordinaate kasutades loodan, et sõnastasin matemaatiliselt õigesti (nt arhimedese_spiraal.py) Joonistamine: variant 2. Kilpkonn liigub etteantud koordinaatidele. Joonistusaknas on x-y koordinaatteljestik. Punkt 0,0 jääb akna keskele. Nagu koolis matemaatikatunnis. Kilpkonna käest saab küsida, millistel koordinaatidel ta paikneb (position(), xcor(), ycor()). Ja talle saab ka ette anda koordinaadid, kuhu ta minema peab (setpos(), setx(), sety()). Etteantud koordinaatidele liikumiseks ei ole teda vaja peaga nõutud suunda pöörata. Ta liigub edukalt ka nö külgsuunas. Iga liikumine jätab maha jälje (kui just saba üles pole tõstetud). x,y = position() # Saime teada praeguse asukoha setpos(x+50, y+50) # Liigutame diagonaalis kirdesse

Sarnaselt saab küsida ja muuta ka ainult ühte koordinaati: x = xcor() setx(x+50) Selles režiimis saab näiteks joonistada edukalt igasuguseid funktsioonide graafikuid, kui suudame leida parameetrilised võrrandid x ja y väljaarvutamiseks. Ülesanne 2 Funktsiooni graafik Proovime koos joonistada siinusfunktsiooni graafikut. Lisaks saab vaadata näidet epitsükloidi joonistamisest (epitsykloid.py). Kui tead veel mõnda põnevat funktsiooni, siis proovi sarnaselt joonistada. Joonistamine: variant 3. Terved kujundid. On mõned käsud, millega saab joonistada terve kujundi. Näiteks saab joonistada ringi funktsiooniga circle(raadius, ulatus, samme) circle(100) #joonistab ringi raadiusega 100 circle(100,180) #joonistab poolkaare, sest ulatus on 180 Parameetri samme abil saab määrata kui "korralik" ring tuleb, sest ring joonistatakse kui hulknurk ja mida rohkem külgi, seda ilusam. Tasub ka tähele panna, et kilpkonna asukoht ringi joonistamise alguses ei ole mitte keskpunkt, vaid hoopis joone all servas. Joonistada saab ka täppe (dot(raadius, värv)). Kusjuures raadius võib olla üsna suvalise suurusega. Kilpkonna hetke asukoht jääb täpi keskpunktiks. dot(100, "red") # joonistab punase ringi (täpi) raadiusega 100 Ja teisi kujundite funktsioone otseselt ei olegi. Näiteks ristküliku jaoks oleks vaja tõmmata neli joont ja vahepeal kilpkonna vajalikus suunas pöörata. Kui seda vaja teha palju, on kasulik koostada funktsioon. Vaata näidet maja_aiaga.py. Selles ülesandes on aga kasutatud veel midagi, millest seni juttu ei ole olnud nimelt erinevaid värve. Värvid Kaks peamist värvi kirjeldamise võimalust on: - nimede kasutamine; - RGB värvimudeli kasutamine. Värvide nimesid on päris palju (näide t2pid_v2rvilised.py); Näites kasutatud nimed (nn color string) on olemas Pythoni värvispetsifikatsioonis. Kui õigeid nimesid teada, on nende abil hea värve määrata, sest nimi on kirjeldav ja koodi lugedes arusaadav. Kuidas saame näiteprogrammi kasutades teada, kui palju nimelisi värve meie kasutuses on?

Veel üks värvide loetelu: http://www.science.smith.edu/dftwiki/index.php/tk_color_names Mis on RGB värvimudel? Millised on põhivärvused ja millised täiendvärvused? Kuidas neid RGB abil määrata saab? RGB mudeli kasutamiseks on mõistlik määrata värvirežiim funktsiooniga colormode(255) - sel juhul saab määrata kõik mudeli värvid vahemikus 0.. 255. Nimede seos RGB-ga: https://www.tcl.tk/man/tcl8.4/tkcmd/colors.htm Vaatame peamiste värvide jaoks näidet ringid_ja_v2rvid.py ning ringid_ja_v2rvid_viisakam.py Mitut erinevat värvi teoreetiliselt RGB abil määrata saab? Kuidas me saame selle välja arvutada? Saab joonistada kontuuri pencolor() abil seatud värviga ja lasta see seest värvida värviga, mis on eelnevalt seatud fillcolor() abil. Funktsioonidega begin_fill() ja end_fill() määratakse värviga täidetav kujund, värvitakse see osa, mis joonistati nende kahe käsu vahel.. Saab määrata joonistamisel kasutatava pliiatsi (kilpkonna saba) jämedust (ehk tekkiva joone paksust) funktsiooniga pensize(joone_paksus). Joone paksus on täisarv. Lisaks ja lõpetuseks Funktsioone on loomulikult veel. Saab tekitada mitu kilpkonna, kes eraldi oma asju ajavad. Muuta joonistamise kiirust, küsida andmeid kilpkonna omaduste, asukoha jms kohta, kustutada jälge, kirjutada joonistamise aknasse teksti ja küsida kasutajalt sisendit (print ja input töötavad käsuaknast) jne. Aga seda kõike võib lisaks uurida Turtle dokumentatsioonist (link kursuse veebis). Turtle moodulit on käsitletud ka valikkursuse "Rakenduste loomise ja programmeerimise alused" õppematerjalis ning Tartu Ülikooli programmeerimise õpikus (lingid veebilehel). Loomulikult on internetist leitav ka lihtsalt otsides arvukalt näiteid, videoõpetusi ja muud sarnast. Scratch objekt-orienteeritult Scratchi värvilisema poolega tutvumiseks koostas eelmisel kevadel oma bakalaureusetöö raames materjali informaatika eriala üliõpilane Merit Paist. Lingi tema materjalile leiad veebilehelt. Ja seda ongi nüüd võimalus läbi proovida. Aga enne selle kallale asumist vaatame ühte korrutustabeli harjutamise kodutööd, kus on oskuslikult kasutatud objekt-orienteerituse põhimõtteid: https://scratch.mit.edu/projects/292207565/ Kodutöö Kodutööks on seekord valikus kaks võimalust.

Variant 1 Kunstiteos Pythoni Turtle mooduliga Iseseisvaks tööks on seekord kunstiteose tegemine. Kasuks tuleb eelnevalt käsitletud juhuslikkuse kasutamine (juhuslikud värvid, juhuslikud asukohad, juhuslikud suurused ja joonte pikkused ning jämedused jne.). Ja mis põhiline teos on iga kord natuke erinev ;) Variant 2 Mäng Scratchiga Nagu seda kirjeldatakse Scratchi materjali lõpus.