• Koodien tutkimista ja omaa koodailua

Tavoitteet

  • Kerrata Pythonin perusteita koodia tutkimalla ja muuntelemalla

Harjoitus 1

Tutki ja muuta alla olevaa koodia seuraavasti:

a) Koodi toimii. Mutta se ei toimi toivotusti. Etsi sopiva vakion arvo kilpikonnan kääntymistä varten.

b) Ohjelman suoritus voi tuntua rasittavan hitaalta. Muuta piirtäminen nopeammaksi.

c) Mitä kaikkia värejä on käytössä? Lisää ainakin kaksi muuta väriä käyttöön. Kokeile niin kauan, että saat kyseiset värit.

d) Kuvion piirtämisestä on kommentoitu osa pois. Palauta kyseinen koodin osa käyttöön ja tutki vaikutus.

e) Siirrä kuvion sijaintia kohti vasenta ylänurkkaa. Etsi sopiva lukupari siten, että kuvio tulee kokonaan näkyviin. Huomaa, että aloituspiste pitää ilmoittaa ennen piirtämisen alkamista.

Harjoitus 2

Tutki ja muuta alla olevaa koodia seuraavasti:

a) Tutki - eli kokeile erilaisia - size -nimisen muuttujan arvoja.

b) Selvitä, mitä circles -muuttuja tarkoittaa. Saanet sen selville muuttamalla myös sen arvoa ja kokeilemalla.

c) VAATIVA: Muuta koodia siten, että kuusikulmioista piirretään vain ääriviivat. Toisin sanoen kuusikulmioita ei täytetä. Jos saat onnistumaan, muuta vielä viivan paksuutta ja määrittele väri mieleiseksesi. Muista, että voit tutkia dokumentaatiota.

Harjoitus 3

Kehitä liikennevalot. (Tehtävää voi jatkaa seuraavalla viikolla.)

SPEKSI:

  • Toteuta ensimmäisessä vaiheessa kuva valoista:

        • allekkain kolme samankokoista ympyrää

            • ylin väriltään punainen

            • keskimmäinen oranssi

            • alin vihreä

VIHJE: Voit muokkailla Trinketin esimerkkikoodia liikennevalojen näköiseksi.

Viimeistele ensimmäinen vaihe kehystämällä ympyrät suorakulmiolla.

  • Muuta toisessa vaiheessa koodia siten, että ympyröiden värit vaihtuvat vuorollaan

  • Tutki kolmannessa vaiheessa Wikipediasta, miten valot vaihtuvat. Valot tulevat käyttöön alueella, jossa on 50 km/h tunnissa rajoitus. Vihreän tulee palaa 15 s ja punaisen 10 s.

Materiaaleja

Teemu Sirkiän pdf-dokumentti Ohjelmoinnin perusteet Pythonilla. Mm. for-silmukasta on hyvät kuvaukset.

Turtle-grafiikan dokumentaatio.