Kierros 4, tehtävä 4

Alkuluvut (250 p)

Tässä tehtävässä harjoitellaan erityisesti seuraavia asoita:

Tee Eclipseen uusi projekti, jonka nimi on tehtava4_4 ja tähän projektiin moduuli alkuluvut. Kirjoita moduuliin ohjelma, joka tulostaa alkuluvut käyttäjän haluamalta väliltä käyttämällä hyväksi funktiota, joka tutkii parametrina annetusta luvusta onko se alkuluku.

Alkulukuja ovat kaikki ykköstä suuremmat luvut, jotka ovat jaollisia vain ykkösellä ja itsellään.

Kirjoita ohjelmaasi seuraava funktio:

Kirjoita sitten pääohjelma, joka pyytää käyttäjältä alarajan ja ylärajan, joiden väliltä alkuluvut halutaan luetella. Tämän jälkeen ohjelma käy läpi kaikki luvut annetulta väliltä (ala- ja yläraja mukaanlukien) ja tutkii jokaisesta funktion onko_luku_alkuluku avulla, onko luku alkuluku. Jos se on, pääohjelma tulostaa alkuluvun.

Pääohjelman pitää myös tarkistaa, että käyttäjän antama alaraja on vähintään 0. Jos se ei ole, ohjelma tulostaa Alaraja ei voi olla nollaa pienempi!, eikä tee muuta. Ohjelman pitää myös tarkistaa, että yläraja ei ole pienempi kuin alaraja. Jos yläraja on pienempi, ohjelma tulostaa Ylaraja ei saa olla alle alarajan!.

Ole tarkka siitä, että ohjelmasi tulostus on täsmälleen (välimerkkejä myöten) alla olevan mallin mukainen. Palauta Gobliniin tiedosto alkuluvut.py.

Esimerkkejä ohjelman suorituksesta:

[ohjelman suoritus alkaa]
Ohjelma kertoo alkuluvut halutulta valilta.
Anna valin alaraja.
50
Anna valin ylaraja.
100
Alkuluvut valilla 50 - 100:
53
59
61
67
71
73
79
83
89
97
[ohjelman suoritus päättyy]

[ohjelman suoritus alkaa]
Ohjelma kertoo alkuluvut halutulta valilta.
Anna valin alaraja.
2040
Anna valin ylaraja.
2050
Alkuluvut valilla 2040 - 2050:
[ohjelman suoritus päättyy]

[ohjelman suoritus alkaa]
Ohjelma kertoo alkuluvut halutulta valilta.
Anna valin alaraja.
503
Anna valin ylaraja.
503
Alkuluvut valilla 503 - 503:
503
[ohjelman suoritus päättyy]

[ohjelman suoritus alkaa]
Ohjelma kertoo alkuluvut halutulta valilta.
Anna valin alaraja.
1000
Anna valin ylaraja.
999
Ylaraja ei saa olla alle alarajan!
[ohjelman suoritus päättyy]

[ohjelman suoritus alkaa]
Ohjelma kertoo alkuluvut halutulta valilta.
Anna valin alaraja.
-10
Alaraja ei voi olla nollaa pienempi!
[ohjelman suoritus päättyy]

Värikoodit:
Sininen: Syöte käyttäjältä
Vihreä: Ohjelman tuloste
Punainen: Erityishuomatus: ei tulosteta