Algoritmit ja ohjelmointi lukion matematiikassa

Samu Huovinen, Matti Heikkinen ja Jari-Pekka Makkonen

Johdanto

Lukion uudessa opetussuunnitelmassa (2019) kurssin MA11 tavoitteiksi on asetettu, että opiskelija

  • tietää mikä on algoritmi, sekä oppii tutkimaan, kuinka algoritmit toimivat,
  • oppii toteuttamaan yksinkertaisia algoritmeja ohjelmoimalla.

Kurssin MA11 sisältöihin kuuluvat esimerkiksi

  • algoritmisen ajattelun peruskäsitteet: peräkkäisyys, valinta ja toisto
  • yksinkertaisten algoritmien, lajittelualgoritmien tai yhtälön numeeriseen ratkaisuun liittyvän algoritmin ohjelmointi.

Algoritmit ja ohjelmointi matematiikassa materiaalin sisältö

Tässä materiaalissa käydään läpi python-ohjelmoinnin ne perusrakenteet, joiden avulla on mahdollista laskea lukion kurssin MA11 tehtäviä.  Aineisto on tarkoitettu sekä opettajille että lukiolaisille itseopiskeluun tai omien ohjelmointitaitojen syventämiseen. Materiaalissa on esitelty miten python-ohjelmointikielellä toteutetaan seuraavat rakenteet

  • muuttujat ja muuttujien käyttö eri tilanteissa
  • ehtolauseet ja toisto
  • erilaisten funktioiden toteutus ja rekursio
  • listat
  • kuvaajien piirto.

Näiden ohjelmointityökalujen avulla lasketaan esimerkkien kautta lukion matematiikasta

  • Yhtälön numeerinen ratkaisu Newtonin mentelmällä, kiintopistemenetelmällä ja välinpuolitusmenetelmä
  • Aritmeettiset ja geometriset lukujonot ja niiden summat
  • Funktion pinta-alan likiarvon numeerinen ratkaisu
  • Tilastomatematiikasta, keskiarvo, moodi ja mediaani
  • vektorien laskutoimituksia
  • funktion kuvaajan piirto
  • Eratostheneen seula alkulukujen etsimiseksi
  • kokonaislukujen jakaminen alkutekijöihin
  • geometrisen keskiarvon simulointi

Materiaali on toteuttettu Jupyter-ympäristössä, mutta esimerkit toimivat myös muissa python -ympäristöissä.  Jypyter – notebook tiedostot ovat ladattavissa Otaniemen lukion GitHub-tililtä https://github.com/otaniemenlukio/lukiomatematiikkaa-ohjelmoimalla