Ohjelmointia matematiikkaan

Ohjelmointia matematiikkaan

Olen tekemässä sähköistä oppikirjaa yläkoulun ohjelmointiin.

Näytekirja löytyy osoitteesta.
https://peda.net/oppimateriaalit/e-oppi/n%C3%A4ytekirjat/ylakoulu/ohjelmointi

Kirjalla on kaksi tavoitetta. Ensimmäinen tavoite on käydä läpi ohjelmoinnin perusrakenteita, kuten esimerkiksi: piirtokomennot, muuttujat, valintalause, toistolause, aliohjelmat eli funktiot ja taulukkomuuttujat eli listat. Toinen tavoite on tehdä ohjelmoinnista työkalu matematiikan tunnille. Kirjaa kehitetään jatkuvasti ja tehdään siihen parannuksia sitä mukaa kun oppimateriaalia keritään testata käytännössä. Sähköinen oppikirja voidaan tarvittaessa päivittää nopeastikkin.

Voiko ohjelmointi olla luovaa ja hauskaa?


Oppikirjassa on seuraavia opetuksellisia ratkaisuja.

1) Sanallinen algoritmi

Ohjelman ja ongelman kielentäminen auttaa ohjelman toiminnan ymmärtämisessä. Kaikissa kirjan esimerkeissä on esitetty ohjelman sanallinen algoritmi. Sanallisessa algoritmissä on esitetty ohjelman ratkaisuidea. Samalla kerrotaan kuinka ohjelman toiminta tulisi kertoa oppilaalle.

SANALLINEN ALGORITMI
  1. Aseta ikkunan kooksi 450 px vaakaan ja 450 px pystyyn.
  2. Aseta ikkunan taustaväriksi valkoinen.
  3. Aseta reunaviivan paksuudeksi 5.
  4. Aseta täyttöväriksi syaani.
  5. Aseta reunaviivan väriksi musta.
  6. Piirrä 100 px leveä ja 200 px korkea suorakulmio paikkaan (50,50).
  7. Aseta täyttöväriksi magneta.
  8. Piirrä 250 px leveä ja 100 px korkea ellipsi paikkaan (300,100).
  9. Aseta täyttöväriksi sinivihreä.
  10. Laita asetus, joka poistaa reunaviivan.
  11. Piirrä 100 px leveä ja 100 px korkea ympyrä paikkaan (150,350).
  12. Aseta reunaviivan väriksi kastanjanruskea.
  13. Laita asetus, joka poistaa täytön.
  14. Piirrä 100 px leveä ja 100 px korkea neliö paikkaan (250,250).


2) Teoria esitetty kuvin ja esimerkein

Kirjan perusrungon muodotavat teksti, kuvat ja ohjelmoinnin esimerkit. Sähköisessä oppimateriaalissa saavutetaan se etu, että esimerkit voi kopioida omalle laitteelle, jolloin niitä voi testata käytännössä. Esimerkkien testaus ja muutelu on jopa suotavaa. Koska Processing-ohjelmointi on xy-koordinaatistoon sidottu, niin komentojen havainnolistaminen kuvin on helppoa. Oppitunnin keskeinen asia on esitetty tiivistelmässä.



3) Animaatiot

Kun ajat ohjelman, niin se suoritetaan silmänräpäyksessä, vaikka todellisuudessa koodia suoritetaan rivi-riviltä. Animaatio antaa mahdollisuuden suorittaa koodia rivi-riviltä. Animaatiolla voidaan esittää tulostus ja muuttujien arvon muuttuminen. Animaatio auttaa etenkin niitä oppilaita, jotka haluavat eriyttävää materiaalia. Animaatio jaksaa opettaa kärsivällisesti ihan niin monta kertaa kuin halutaan. 




4) Simulaatiot

Koska Processing-ohjelmointikieli tukee hiiriohjausta, niin sillä on helppo luoda erilaisia simulaatioita. Kirjan mukana tulee paljon valmiita simulaatioita, joilla voidaan havainnolistaa sekä ohjelmoinnin peruskomentoja, että matemaattisia ilmiöitä. Käytännössä kirjassa on esitetty valmis koodi, joka vain kopioidaan ohjelmointiympäristöön ja suoritetaan. Tämä tuo uuden hauskan tavan ymmärtää komentoja syvällisemmin ja tehokkaammin.




5) Tehtävät

Kirjassa on perustehtäviä ja soveltavia tehtäviä. Tehtävien perusteella voidaan tehdä tarvittaessa eriyttämistä. Myös tehtävät on esitetty esimerkkikuvin, joten se osaltaan helpottaa ymmärtämään tehtävän antoa. Ohjelmointi tehtävät palautetaan kopioimalla oma koodi oppimisympäristöön. Opeoppaassa on kaikkien tehtävien esimerkkiratkaisut opettajan käyttöön. Kirjassa on myös mahdollista antaa kotitehtäviä. 



6) Tukimateriaalia

Opeoppaassa on mukana tukimateriaalia erityisopetuksen tarpeisiin. Samat tehtävät, jotka ovat sähköisessä muodossa, löytyvät myös ohjeistettuna pdf-muodossa, josta se voidaan tarvittaessa tulostaa paperille. Lisäksi opeoppaassa on tulosttettavia koordinaatistopohjia, sekä komentotaulukoita, joita myös voidaan monistaa oppilaille tarvittaessa.


7) Lisämateriaalia

Kirjassa on myös lisämateriaalia niille oppilaille, jotka jo hallitsevat perusteet. Lisämateriaalia voidaan käyttää esimerkiksi tietotekniikan tunnilla oheismateriaalina. Lisämateriaalissa on mm. ideoita oman pelin rakentamiseen. Lisämateriaalin avulla voidaan tarvittaessa eriyttää ylöspäin.



8) Scratch

Kirjan mukana on myös ohjeita Scratch:iin. Tulevaisuudessa Scratch on monelle oppilaalle tuttu alakoulusta. Kun Processing-koodia voi verrata johonkin tuttuun, niin uuden oppiminen helpottuu. Koska Processing ja Scratch ovat ohjelmointikielen rakenteen perusteella lähellä toisiaan, niin Scratch:iä voidaan käyttää tarvittaessa algroritmien havainnolistamiseen. 



9) Integrointi matematiikkaan

Kirja yksi tavoite on tehdä ohjelmoinnista työkalu matematiikkaan. Käytännössä tämä onnistuu matematiikka-funktioiden ja simulaatioiden avulla. Kynnys näiden käyttämiseen on matala. Vuorovaikutteisuus tekee matematiikan oppimisestakin hauskaa. Kirja katsoo pitkälle tulevaisuuteen.



10) Videot


Kirjaan on nyt myös tehty jokaiseen kappaleeseen video. Videot julkaistaan kirjan mukana syksyn 2019 aikana.