Close menu
Close menu

Tunnistaudu

Kirjaudu

Etkö ole vielä jäsen?

Liity jäseneksi

Aliohjelma eli lohko

Tehdään aluksi ohjelma, joka piirtää ympyrän. Ympyrä voidaan piirtää esimerkiksi siten, että mennään aluksi ympyrän keskipisteeseen, jonka jälkeen liikutaan eteenpäin ympyrän säteen verran. Laitetaan kynä alas ja piirretään piste, jonka jälkeen nostetaan kynä ylös ja liikutaan takaisin ympyrän keskipisteeseen. Keskipisteessä käännetään suuntaa 1° myötäpäivään ja tehdään samat komennot kuin äsken uudestaan. Kun kääntymisiä on 360 kappaletta, niin silloin on myös ympyrän pisteitä 360 kappaletta ympyrän kehällä. Jotta koodi saadaan lyhyeksi, niin nämä komennot kannattaa laittaa toista-lauseen sisälle, jossa on 360 toistoa. Eli näistä pisteistä muodostuu ympyrä. Tässä ideassa on se hyvä puoli, että voimme mennä aluksi mihin tahansa ympyrän keskipisteeseen ja piirtää ympyrän halutulla säteellä. Kokonainen ohjelma on seuraavanlainen.

Mietitään seuraavaksi, että miten ohjelmaa kannattaisi muuttaa jos haluaisimme piirtää useita ympyröitä yhtä aikaa. Tällöin ympyrän piirtämisestä kannattaa tehdä oma aliohjelmansa, joka löytyy kohdasta: Lohkoni.


Kun luot uuden aliohjelman eli lohkon, niin napsauta aluksi Tee lohko-painiketta.

Jonka jälkeen anna lohkolle nimi, esimerkiksi tässä lohkon nimi on ellipse. Koska haluamme, että pääohjelmasta voidaan välittää lohkolle ympyrän keskipiste eli vaakasuuntainen paikka ja pystysuuntainen paikka xy -koordinaatistossa, sekä ympyrän halkaisija, niin napsauta Lisää syöte-painiketta kolme kertaa ja anna syötteille nimet x, y ja halkaisija kuten kuvassa. Käytännössä loimme kolme muuttujaa eli x, y ja halkaisija, johon voidaan pääohjelmasta välitettävä tieto tallentaa. Kuittaa lopuksi OK painikkeella.

Olet nyt luonut lohkon ellipse, jossa on kolme muuttujaa: x, y ja halkaisija. Voit hiirellä tarttua lohkon muuttujiin ja tehdä siitä hiirellä raahaamalla kopioita. Muuttuja on ohjelman muistipaikka, johon voidaan tallentaa ohjelman suorituksen aikaista tietoa. Tässä tapauksessa tieto välitetään pääohjelmasta. Lohkon omia muuttujia voit vain käyttää luodussa lohkossa. Luodaan seuraavaksi aliohjelma eli lohko kuten kuvassa.

Lohko, jossa on vihreä lippu, on nimeltään pääohjelma. Lohko ellipse on aliohjelma (käytetään myös nimitystä funktio), joka suoritetaan vain jos sitä kutsutaan pääohjelmasta. Kun nyt pääohjelmassa on lohkon kutsukomento muotoa: ellipse 50 -50 150, niin muuttuja x saa arvon 50, muuttuja y saa arvon -50 ja muuttuja halkaisija saa arvon 150. Kun koodissa on halkaisija jaettu kahdella, niin tällöin saamme selville ympyrän säteen. Vastaavasti komennossa: ”mene sijaintiin” on käytetty muuttujia x ja y, niin ympyrä piirretään siihen paikkaan jota pääohjelmassa kutsutaan. Nyt voimme käytännössä piirtää halutun kokoisen ympyrän halkaisijan avulla haluttuun paikkaan (x, y).

Muutetaan pääohjelmaa siten, että piirretään kuusi sisäkkäistä ympyrää eli käytännössä kutsumme aliohjelmaa ellipse kuusi kertaa. Ohjelman suoritus näyttää nyt tältä.

Jos aliohjelma kutsuja on paljon, niin tarvittaessa voit lyhentää koodia käyttämällä toistolausetta myös pääohjelmassa, jonka sisällä aliohjelma-kutsu on. Yllä oleva pääohjelma voitaisiin tehdä toista-lauseen avulla seuraavalla tavalla. Koska ympyrän halkaisija kasvaa aina 50:llä, niin voimme perustaa muuttujan a, jonka arvo kasvaa 50:llä, joka piirtämisen jälkeen. Lisäksi jos haluat hahmon piiloon, niin voit lopuksi piilottaa hahmon piilota-komennolla.