maanantai 21. syyskuuta 2015

Racket - iskuryhmän syksyn ensimmäinen Workshop

Eilen illalla Lielahden koulun ATK-luokka täyttyi Racket - iskuryhmän koodariopettajista. Workshop:ien idea on opiskella Racket - ohjelmointia yhdessä, jakaa kokemuksia ja vinkkejä sekä kehitellä uusia tehtäviä. Uusia opettajia oli saatu mukaan: Eeva Uitti (Ylöjärven yhtenäiskoulu), Kaisa Poikela (Kaukajärven koulu) sekä Sara Viertola (Pirkkalan yläaste).

Tällä kerralla esittelin ryhmälle DrRacket:in "pakettipalvelun", eli Package Managerin. Sen avulla asensimme koulun koneisiin koodaamiani apukirjastoja ml. Racket Turtlen sekä Display-read:in. Display-read kirjaston avulla voi kysellä helposti käyttäjältä tietoja, ja näiden avulla harjoitella vaikka if - rakennetta. Tämä kirjasto on vasta kehitteillä, joten siitä ei ole olemassa vielä valmiista käsikirja sivustoa. Racket Turtlen avulla taasen voi piirtää Turtle grafiikkaa, ja suurin osa iskuryhmää tutustuikin Turtlen ohjailemiseen Koodausta kouluun käsikirjan avulla.

Tässä joitakin illan aikana kehiteltyjä ja testattuja tehtäväideoita:

1) Ohjelma, joka kysyy käyttäjältä särmiön sivujen pituudet käyttäen display-read - funktiota, ja sen jälkeen kutsuu särmiön kokonaispinta-alan laskemiseen ohjelmoitua funktiota. Harjoitukseen kuuluu myös särmiön levityskuvan piirtäminen 2htdp/image kirjaston rectangle, above ja beside - funktioiden avulla. Sokerina pohjalla voisi olla vastaavan 3D - kuvion piirtäminen Racket Turtlella.

2) Ohjelma, joka kysyy käyttäjältä useamman suorakulmion kannan ja korkeuden tiedot display-read:in avulla (rekursiivisen silmukan avulla) ja sitten laskee pinta-alat, piirtää kuvat, vertailee pinta-aloja toisiinsa ja ilmoittaa suurimman. Päädyimme tallentamaan kannan ja korkeuden tiedot listan muotoon esim. (list (list 20 40) (list 40 50)(list 30 70)))

3) Ohjelma, joka laskee "vaatimattoman pojan" palkan. Eli, poika pyytää ensimmäiseltä päivältä palkaksi 2 senttiä, seuraavana päivänä 2 kertaa enemmän kuin edellisenä päivänä. Tehtävänä on laskea kuinka paljon hän saa rahaa 20 päivän työstä. Tämäkin tehtävä saatiin koodattua rekursion avulla, mutta mietittäväksi jäi voisiko sen tehdä vielä yksinkertaisemmin.

4) Racket Turtlella piirrettiin monenlaisia kuvioita, monikulmioita, ympyröitä yms. ja  yhdisteltiin niitä samaan kuvaan. Hienoimmassa kuviossa oli kolme eri väristä kolmiota kolmion muodossa ja niitä pyöriteltiin eri asentoihin repeat:in avulla!

Kouluilla, joissa oli jo kokeiltu Racket:iä saatiin palautetta, että kuvilla aloittaminen innosti ehkä enemmän kuin peruslaskuilla aloittaminen, tosin Ylöjärvellä 7. luokkalaiset pojat olivat innostuneet jopa niistäkin. Kaukajärvellä oli aloitettu motivointitunnilla, eli kerrottu mitä ohjelmointi on ja miksi se on tulossa kouluun, ja tämä oli auttanut oppilaiden innostuksen herättämisessä. Hatanpäällä oli 8. luokan matematiikan tunnilla tutkittu DrRacketin avulla neliön ja neliöjuuren konseptia opettajan itse laatiman monisteen ja koodin pohjalta, ja Lielahdessa DrRacketillä oli selvitetty lukujen suuruusjärjestyksiä käyttämällä vertailuoperaatioita (<, > ja =).

DrRacket oli myös saapunut koulujen ohjelmistojakeluun (viimein), joten nyt loputkin koulut pääsevät asentamaan ohjelmaa.

Ilta oli mitä antoisin! Oli hienoa huomata, että omia tehtäväideoita oli alkanut syntymään ja että käsikirja tuntui toimivan hyvin!

Näihin tarvitaan vain rectangle, above ja beside

Ei kommentteja:

Lähetä kommentti