
9. luokka
IT
random python math moduulit
Moduulit
Pythonissa kaikkia toimintoja ei ole järkevää sisällyttää ohjelmointikielen perusversioon, vaan jotkin komennot on koottu aihealueittain erilaisiin moduuleihin eli ohjelmakirjastoihin. Moduuli otetaan käyttöön komennolla import. Import kirjoitetaan ohjelmaan heti ensimmäiseksi riviksi. Tällä kerralla tutustutaan kahteen eri moduuliin.
Math-moduuli
Matemaattisissa sovelluksiin liittyvät työkalut löytyvät moduulista math, joka täytyy ottaa mukaan ohjelman alussa komennolla import math. Alla olevassa taulukossa on joitakin moduulin komentoja.
Merkitys | Math-moduulin komento |
Neliöjuuri luvusta x |
sqrt(x) |
Lukujen a ja b suurin yhteinen tekijä (syt) |
gcd(a,b) |
Luvun x itseisarvo |
fabs(x) |
xy (eli sama kuin x**y) |
pow(x,y) |
Esimerkki 1
Testaa esimerkkikoodia Esimerkki1, huomioi kommentit! Pohdi samalla:
- Mitä ohjelma tekee?
- Mitä eroa olikaan komennoilla float() ja int()?
Random-moduuli
Pythonissa satunnaisuuteen liittyvät työkalut ovat moduulissa random, joka otetaan käyttöön komennolla import random. Ylesimmin moduulista käytetään funktiota randint(a,b), joka arpoo satunnaisen kokonaisluvun väliltä a...b.
Esimerkki 2
Testaa esimerkkikoodia Esimerkki2
- Kiinnitä huomiota kommentteihin
- Kokeile ohjelmaa useamman kerran
Tehtäviä
1. Ympyrän pinta-ala lasketaan kaavalla πr2 , missä r = säde. Tee ohjelma, joka kysyy käyttäjältä ympyrän säteen ja laskee sen perusteella ympyrän pinta-alan kahden desimaalin tarkkuudella. Piin arvon saat math-moduulista komennolla math.pi.
2. Noppasimulaattori. Tee ohjelma, joka arpoo kymmenen kertaa nopan silmäluvun. Lopuksi ohjelma tulostaa heitetyt silmäluvut.
3. Tee ohjelma, joka kysyy käyttäjältä kaksi kokonaisluku ja laskee niiden suurimman yhteisen tekijän.
4. Tehtävänä on luoda ohjelma, joka supistaa murtoluvun yksinkertaisimpaan muotoon. Ohjelma kysyy käyttäjältä osoittajaa ja nimittäjää, jonka jälkeen se kertoo supistetun muodon. Alla on esimerkki tuloste:
Syötä osoittaja: 3
Syötä nimittäjä: 9
Murtoluku 3/9 on supistettuna 1/3.
Vinkki: Tässä tehtävässä kannattanee hyödyntää tehtävän 3 koodia.
5.
(a.) Tee ohjelma, joka arpoo viisi kertaa joko luvun 0 tai 1. Mikäli ohjelma arpoo luvun 0, tulostetaan "Klaava!", mikäli 1 niin "Kruuna!".
(b.) Kolikkoa heitetään 100 kertaa. Tee ohjelma, joka laskee, kuinka monta kruunaa ja klaavaa 100 heitolla saadaan.
6. Arvauspeli. Tee ohjelma, joka arpoo kokonaisluvun väliltä 1-100 ja sen jälkeen pyytää käyttäjää arvaamaan tämän luvun. Jos käyttäjän arvaus on liian pieni, ohjelma tulostaa "Luku on suurempi!". Jos käyttäjän arvaus on liian suuri, ohjelma tulostaa "Luku on pienempi!". Tätä jatketaan niin kauan, että käyttäjä on arvannut oikean luvun. Lopuksi ohjelma kertoo, kuinka monta arvausta käyttäjä käytti.
Palautus
Tallenna vastauksesi Classroomissa olevaan portfolioon.
Opetellaan ohjelmoinnin alkeita; opetellaan loogista ajattelua ja harjoitellaan yksinkertaisen koodin kirjoittamista sekä syvennetään matematiikan osaamista oppilaiden kiinnostuksen mukaan. Tarkoituksena on opetella ohjelmoinnin alkeita ainakin yhdellä ohjelmointikielellä ja syventää matematiikan osaamista.