Java-tehtäviä numeeriseen matematiikkaan
Oppimisaihioita

Oppimisaihioita opetukseen ja jatkotyöstön pohjaksi!

Aihio 1. Origo piirtoalustan keskellä
Normaalisti vasen yläkulma on (0,0) ja oikea alakulma esim. (600,400)

Tässä ratkaisussa origo siirretään tavanomaiseen paikkaan. Aihio tulostaa hiiren napsautuskohdan koordinaatit sekä alkuperäisessä että uudessa koordinaatistossa.

Ratkaisu

Koeaja ratkaisu

Aihio 2. Käyrän piirtäminen peruskoordinaatistoon
Koordinaatisto skaalataan niin, että vasen ylänurkka on (-10,10) ja oikea alanurkka (10,-10). Lisäksi tehdään funktiovalikko, josta piirrettävä funktio valitaan. Kuvaajan yhtälö siirtyy hiiren napsautuskohtaan. Yhtälöitä voidaan muuttaa, jos samalla huolehditaan laskukaavan päivityksestä.

Ratkaisu

Koeaja ratkaisu

Aihio 3. Derivaattafunktion kuvaaja funktion kuvaajasta
Keskeisdifferenssimenetelmän sovellus

Tässä aihiossa koordinaatisto on jo varsin hyvässä kunnossa: akselit, niiden tunnukset ja luvut akselilla näkyvät. Funktiovalikosta valitaan piirrettävä funktio. Sen derivaatan lauseke on myös näkyvissä, mutta sitä ei käytetä.- Ohjelma piirtää funktion kuvaajan sen laskulain avulla. Derivaattafunktion kuvaajan y-koordinaatit luetaan funktion kuvaajan kahden peräkkäisen pisteen kautta kulkevan sekantin kulmakertoimesta. Koska pisteet ovat hyvin lähellä toisiaan, saadaan sekantin kulmakertoimesta kohtuullisen hyvä likiarvo pisteiden puoliväliin piirretyn tangentin kulmakertoimelle eli derivaatalle tässä kohdassa. Ohjelma piirtää näistä kulmakertoimista kuvaajan, joka on siis derivaattafunktion kuvaaja. Tätä ratkaisua kutsutaan keskeisdifferenssimenetelmäksi.

Ratkaisu

Koeaja ratkaisu

Aihio 4. Merkitsevät numerot
Tiedon syöttö tekstikentän avulla, merkkijonon muuttaminen luvuksi

Luku ja merkitsevien numeroiden määrä sijoitetaan tekstilaatikkoon. Ohjelma tarkistaa vastauksen. Tarkistus käynnistyys, kun hiirellä napsautetaan Valmis-nappia.

Ratkaisu

Koeaja ratkaisu
Aihio 5. Synteettiseen sijoitukseen perustuva polynomien jakoalgoritmi
Taulukot tehokäytössä

Jakaja ja jaettava syötetään tekstinä vain tulostusta varten. Jaettavan kertoimet pitää tallentaa taulukkoon ja ilmoittaa myös asteluku. Jakajaksi kelpaa tässä versiossa vain x + a muotoinen binomi (x:n kerroin oltava 1). Sen nollakohta -a sijoitetaan muuttujan jako arvoksi. Aihiossa näkyvät myös jakolaskun eri vaiheisiin liittyvät tietoiskut.

Ratkaisu

Koeaja ratkaisu
Aihio 6. Funktion sin x kuvaajan piirto yksikköympyrän avulla
Animaatio toteutetaan säikeen avulla

Koordinaatistoa voi nyt säätää alkuarvojen avulla. Yksikköympyrän osoitin kiertyy säikeen ohjaamana ja samalla luetaan kulma ja kehäpisteen y-koordinaatti. Tämä piste piirretään peruskoordinaatistoon ja näin muodostuu kuvaaja y=sin x. Kuna hiirellä napsautetaan piirtoalustaa, animaatio pysähtyy ja uudella napsautuksella osoittin alkaa pyöriä vastakkaiseen suuntaan Manuaalinen piirto toteutuu, kun kuvaajan sinistä pistettä raahataan koordinaatistossa.

Ratkaisu

Koeaja ratkaisu
Aihio 7. Funktion cos x kuvaajan piirto yksikköympyrän avulla
Kuvan kaksoispuskurointi välkkymisen estämiseksi

Tämä on parannettu versio aihiosta 6. Tässä on käytetty kuvan kaksoispuskurointia, jolla välkkyminen saadaan kuriin. Piirtäminen ei kohdistu näytön piirtoalustalle vaan muistiin, josta generoituva kuva tulostetaan update-metodilla näytölle. Tämä metodi ei päivityksessä tyhjennä näyttöä. Yksikköympyrän koordinaatistoa on kierretty 90 astetta, joten siinä kehäpisteen y-akselin suunnassa oleva pystykoordinaatti on nyt cos x. Nyt voidaan piirtää y = cos x aivan samalla tavalla kuin Aihiossa 6. piirrettiin y = sin x.

Ratkaisu

Koeaja ratkaisu
Aihio 8. Funktioiden sin x ja cos x arvot ovat luettavissa yksikköympyrästä
Kulma syötetään ensin asteina ja sitten aihio näyttää kulman kehittymisen animaationa.

Yksikköympyrä piirretään suurennettuun koordinaatistoon. Kulma (asteina) syötetään tekstikentän avulla. Osoitin eli loppukylki kiertyy ja muodostaa annetun kulman. Kuviosta voidaan nyt lukea kehäpisteen koordinaatit: y = sin (kulma) ja x = cos (kulma)

Ratkaisu

Koeaja ratkaisu


Paluu