Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Ohjelmointia matematiikkaan

Samankaltaiset esitykset


Esitys aiheesta: "Ohjelmointia matematiikkaan"— Esityksen transkriptio:

1 Ohjelmointia matematiikkaan
Matematiikkaa ohjelmointiin Vaihtoehto e-Opilta Tuomo Riekkinen, Pyhäselän koulu, Joensuu

2 OPS 2014 ohjata oppilasta kehittämään algoritmista ajatteluaan sekä taitojaan soveltaa matematiikkaa ja ohjelmointia ongelmien ratkaisemiseen. Oppilas osaa soveltaa algoritmisen ajattelun periaatteita ja osaa ohjelmoida yksinkertaisia ohjelmia. Luokilla 7–9 aloitetaan perehtyminen johonkin oikeaan ohjelmointikieleen

3 Ohjelmointikielen valinta?
Java JavaScript C, C++, C# Basic Pascal, Delphi PHP Ruby Python Racket Processing Scratch Swift Koodin selkeys ja yksinkertaisuus, pedagogisesti mielekäs! Ohjelmointiympäristön ilmaisuus ja jatkuvuus. Laitteistoriippumattomuus (PC, iPAD) Tulostus XY –koordinaatistoon, hyvät grafiikkakomennot (Geometria). Laskukaavat: Ohjelmointi = Matematiikka Voisiko ohjelmoinnista tulla työkalu matematiikkaan? Miten? Tekniikka & Talous: Eniten työpaikkoja on tarjolla seuraavien kielten osaajille: C, Java, Python, C++ ja JavaScript.

4 Ohjelmointikieliä Racket
MAOL:n tukemaa materiaalia, jossa näkyy innostuneisuus Perustuu funktioihin, alkuun pääseminen helppoa, näppärä vuorovaikutusikkuna Sisäkkäiset funktiot, poikkeava laskujärjestys, kirjastorasite Ohjelmakoodin kasvaessa vaikea hallita, paljon muistamista. Scratch Visuaalinen, helppo päästä alkuun, kokeilun ilo, pedagogisesti hyvä. Puuttuu grafiikkakomennot, kuviot luodaan ohjaamalla hahmoa xy-koordinaatistossa. Huono tietotyypitys (JavaScript) Koodin kopiointi vaikeaa, koska ei ole tekstiä. Voidaan luoda video, kieli ainoastaan tulkattava. Python Perinteistä tekstipohjaista konsoliohjelmointia, komennot selkeitä. Paljon saatavana kirjallisuutta ja ilmaisia oppaita netissä. Oppimateriaali ”90-lukulaista”. ”Koodarilta koodarille”. Suljetut ohjelmointiympäristöt. Vaatii omatoimisuutta. Kirjastoja hyödynnetty huonosti. Processing Hyvin tuettu eri laiteympäristöissä (PC, tabletit), hiiriohjaus toimii Tulostus XY-koordinaatistoon Selkeät grafiikka-komennot Matemaattiset operaatiot samanlaisia. Hyvä laajennettavuus, olio-ohjelmointi Pedagogisesti mielekäs. Opetuskäyttöön suunniteltu kieli.

5 Racket Racketissa sisäkkäiset funktiot monimutkaistavat koodia.
Myös laskutoimitukset käsitellään funktion syötteenä. Lähde:

6 Ympyrän piirtäminen: Scratch
Scratchissä ei ole piirtokomentoja. Kuviot luodaan liikuttamalla kynää. Jos ympyrä halutaan piirtää tarkasti, niin silloin tarvitaan jo trigonometrian kaavoja.

7 Python: turtle kirjasto
import turtle   myTurtle = turtle.Turtle(shape="turtle") myTurtle.penup() myTurtle.setposition(-120, 0) myTurtle.pendown() myTurtle.circle(50)   turtle.getscreen()._root.mainloop() Pythonille saatavana kirjastoja, joilla voitaisiin piirtää geometrisiä kuvioita, mutta niitä on hyödynnetty huonosti. Integrointi matematiikkaan jää heikoksi, samoin ohjelmoinnin tulostus jää tekstipohjaiseksi. Lähde:

8 Ympyrän piirtäminen: Processing
Selkeät grafiikka-komennot, jotka tulostavat xy-koordinaatistoon. Matematiikan soveltaminen helppoa. void setup() { size(450,450); background(255,255,255); fill(0,255,255); } void draw() { ellipse(150,150,200,200); } Processing-kielellä on omat komennot. Oikeasti Processing-kieli käyttää taustalla java-tulkkia eli java-kieltä. Processing-kieli on selkeää, mutta yhtä tehokasta kuin java. Vaikka Processing-kieli on opetuskieli, niin silti saavutetaan oikean ohjelmointikielen hyödyt.

9 Processing: xy-koordinaatisto
void setup() { size(400,400); // Koordinaatisto background(255); fill(0); } void draw () { translate(200,200); // Origo keskelle scale(1,-1); // y-kasvaa ylös strokeWeight(1); line(200,0,-200,0); // x-akseli line(0,200,0,-200); // y-akseli strokeWeight(10); point(50,100); Matematiikan xy-koordinaatisto helposti saavutettavissa.

10 Processing ≈ Scratch void setup() { size(400,400); // Koordinaatisto
background(255); // Pyyhi strokeWeight(10); // Kynän koko stroke(0,0,255); // Kynän väri } void draw () { translate(200,100); // Mene kohtaan for (int a= 1; a<=36; a++) { // Toista ellipse(0,0,10,10); // Kynä alas translate(20,0); // Liiku 20 askelta rotate(radians(10)); // Käänny Processing-kielellä helppo saavuttaa Scratchiä vastaavat ohjelmointi rakenteet! Voi käyttää rinnan!

11 Oppikirjan sisältö 7-luokka (12 h) 8-luokka (12 h) 9-luokka (12 h)
Koordinaatisto, ohjelmointiympäristö Grafiikkakomennot: piste, viiva, teksti, ellipsi, suorakulmio, kolmio, nelikulmio, monikulmio, sektori, värin asettaminen. Muuttujat, muuttujien väliset laskukaavat (+,-,*,/), pyöristys, satunnaisluku If-lause, AND, OR operaatiot 8-luokka (12 h) Koordinaatiston muokkaus (siirto, skaalaus, peilaus, kierto) Laskuri ja for-silmukka Funktiot eli aliohjelmat, Konnagrafiikkaa Extra: Matemaattiset funktiot, simulaatiot 9-luokka (12 h) Kertausta: muuttujat, laskukaavat, if-lause, silmukat (for, while) Ympyräliike (sin ja cos kaavat) 1-ulotteinen taulukko = lista 2-ulotteinen taulukko, tilastojen esittäminen

12 Algoritminen ajattelu
Perustehtävät Algoritminen ajattelu Piirrä ympyrä, jonka säde on 50 ja keskipiste on paikassa (200,300) 1) Tehtävä: Piirrä kolmio 3) ellipse(200,300,100,100); Vaativammat tehtävät var int x = 200; var int y = 300; var int r = 50; ellipse(x,y,2*r,2*r); 2) 4) Soveltavat tehtävät for (a=5; a<50; a=a+5) { var int x = 200; var int y = 300; var int r = 50; ellipse(x,y,2*r-a,2*r-a); }

13 Algoritminen ajattelu
Kirjan mukana animaatioita, joissa voidaan koodia ajaa riviriviltä!

14 Kirjan rakenne Opettaja pitää lyhyen (5-10min) opetuskeskustelun yhteenveto-osion esimerkkien avulla, jonka jälkeen mennään tekemään tehtäviä.

15 Eriyttäminen LOPPUPÄÄN TEHTÄVÄT LISÄTIETOA KERTAUSTEHTÄVÄT
YHTEENVETO + ALKUPÄÄN TEHTÄVÄT SANALLINEN ALGORITMI ANIMAATIOISTA APUA PIIRTÄMINEN PAPERILLE ESIMERKIT SCRATCH VAIHTOEHTONA

16 Matematiikkafunktiot
monikulmio(x,y,s,n,k); 8. luokan materiaalin mukana valmiita aliohjelma eli funktioita, joilla voidaan havainnollistaa matematiikkaa ohjelmoinnin keinoin. Otetaan käyttöön KOPIOI – LIITÄ toiminnon avulla!

17 Simulaatiot 8. luokan materiaalin mukana valmiita simulaatioita. Simulaatiot toimivat hiiri-ohjauksella. Otetaan käyttöön KOPIOI – LIITÄ toiminnon avulla!


Lataa ppt "Ohjelmointia matematiikkaan"

Samankaltaiset esitykset


Iklan oleh Google