Seuraavan harjoituksen tarkoitus on tutustuttaa proseduraalisen ohjelmoinnin perusajatukseen. Samalla voi tutustua ohjelmoinnin alkuopetusta varten kehitettyyn Scratch-ohjelmointiympäristöön.
Maaliskuu 2015
Proseduraalisen ohjelmoinnin
ja oli-ohjelmoinnin
periaatteet ovat pysyneet samoina ainakin viisikymmentä vuotta. Monet yleiset ohjelmointikielet kuten C++, Java, Python, perustuvat proseduraalisen ohjelmoinnin ja olio-ohjelmoinnin periaatteisiin.
Tämän harjoituksen tarkoitus on tutustuttaa proseduraalisen ohjelmoinnin keskeisiin asioihin, kuten kontrollirakenteisiin ja muuttujiin. Teemme ohjelman — algoritmin, joka piirtää kuvan 1 kaltaisia geometrisia kuvioita. Moinen kuvio tuskin sinänsä säväyttää ketään videopelien maailmaan tottunutta, mutta teemmekin piirto-ohjelman, koska scratch-kielisen piirto-ohjelman käskyjen vaikutus havainnollistuu selkeästi ohjelmoijalle. Geometristen kuvioiden piirtelyn myötä pääsee samalla harjoittelemaan geometrista ajattelua. Luvun lopussa on esimerkki olio-ohjelmoinnista Scratchilla.
Käynnistä scratch ohjelmointiympäristö
tästä
ja valitse kokeile sitä (tai try it out, jos selaimesi ei suosi suomen kieltä). Sinun pitäisi päästä vaiheen 1 mukaiselle aloitussivulle.
Hyvä työtä säästävä tapa on tallentaa ohjelma uudella nimellä ennen kuin alkaa tehdä isoja muutoksia. Klikkaa yläpalkista tiedosto — lataa tietokoneellesi. Anna tiedoston nimeksi vaikka "piirtely-v1". Seuraavalla kerralla tallenna ohjelma nimellä "piirtely-v2" jne. Jos jossain vaiheessa satut sotkemaan ohjelmasi tosi pahasti, voit ladata edellisen version eikä sinun tarvitse aloittaa kaikkea alusta. Pienet virheet voi korjata yläpalkin komennolla muokkaa — peruuta.
Vaiheissa 12 ja 13 piirsit monikulmion nurkkaan pienen kolmion. Muuta ohjelmaa niin, että joka kulmaan piirtyy iso monikulmio pienoiskoossa niin, että kunkin sivun pituus on viidesosa ison kuvion sivun pituudesta eli pienemmän kuvion piiri on viidesosa isomman kuvion piiristä. Voit joko luoda uuden muuttuja vaikka nimellä piiri2 ja käyttää sitä sisemmässä toista-haarukassa tai käyttää kahta sisäkkäistä jakolaskua. (Tämä tehtävä saattaa vaatia pikkuisen miettimistä ja kokeilua.)
Scracthilla voi tehdä paljon muutakin, monen mielestä ehkä hauskempaakin kuin monikulmioiden piirtely, joten kannattaa tutustua scratchin aloitussivun oikean laidan tutoriaaleihin. Voit vaikka tehdä ohjelman, jossa kissat tanssivat, mikäli geometria alkaa tympiä. Voit myös vilkaista
lisäharjoituksia
, jotka esittelevät muutamia ohjelmoinnin perusrakenteita.
Kiitokset
Helsingin yliopiston aineenopettajakoulutuksessa valmistelimme ryhmätyönä ohjelmoinnin oppitunnin. En tiedä, vastaako ylläoleva ensinkään ryhmän muiden jäsenten ajatuksia, mutta joka tapauksessa ylläoleva perustuu ryhmätyössä oppimaani.