Ohjelmoinnin perusteet Y Python



Samankaltaiset tiedostot
Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin.

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Muuttujien roolit Kiintoarvo cin >> r;

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b

Ohjelmoinnin perusteet Y Python

Algoritmit. Ohjelman tekemisen hahmottamisessa käytetään

Ohjelmoinnin perusteet Y Python

Tietuetyypin määrittely toteutetaan C-kielessä struct-rakenteena seuraavalla tavalla:

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus)

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssien laaja oppimäärä

Kerta 2. Kerta 2 Kerta 3 Kerta 4 Kerta Toteuta Pythonilla seuraava ohjelma:

13. Loogiset operaatiot 13.1

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

811120P Diskreetit rakenteet

Ohjelmoinnin perusteet Y Python

13. Loogiset operaatiot 13.1

Ohjelmoinnin peruskurssi Y1

C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. Operaatioiden suoritusjärjestys

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä

811120P Diskreetit rakenteet

Java-kielen perusteet

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 5: Python

T Ohjelmoinnin perusteet Y (Python). Tentti

Ohjelmoinnin peruskurssi Y1

Ehto- ja toistolauseet

PHP tehtävä 3 Atte Pekarinen TIKT13A

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Java-kielen perusteita

Ohjelmoinnin perusteet Y Python

JavaScript alkeet Esimerkkikoodeja moniste 2 ( Metropolia)

Tietotyypit ja operaattorit

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Johdatus Ohjelmointiin

ITKP102 Ohjelmointi 1 (6 op)

815338A Ohjelmointikielten periaatteet

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100

Ohjelmoinnin perusteet Y Python

Se mistä tilasta aloitetaan, merkitään tyhjästä tulevalla nuolella. Yllä olevassa esimerkissä aloitustila on A.

Ohjelmoinnin peruskurssi Y1

IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit

ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014

Harjoitus 1 -- Ratkaisut

Python-ohjelmointi Harjoitus 2

ITKP102 Ohjelmointi 1 (6 op), arvosteluraportti

Ohjelmoinnin perusteet Y Python

Muistutus aikatauluista

Ohjelmoinnin perusteet Y Python

Java-kielen perusteet

Luento 5. Timo Savola. 28. huhtikuuta 2006

811120P Diskreetit rakenteet

Ohjelmoinnin peruskurssi Y1

Transkriptio:

Ohjelmoinnin perusteet Y Python T-106.1208 26.1.2009 T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 1 / 33

Valintakäsky if syote = raw_input("kerro tenttipisteesi.\n") pisteet = int(syote) if pisteet >= 50: print "Tentti meni lapi!" else: print "Reputit!" main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 3 / 33

Palkanlaskuesimerkki TUNTIPALKKA = 12.50 syote = raw_input("anna tyotunnit.\n") tunnit = float(syote) if tunnit <= 40.0: palkka = tunnit * TUNTIPALKKA else: ylityopalkka = 1.50 * (tunnit - 40.0) * TUNTIPALKKA palkka = ylityopalkka + 40.0 * TUNTIPALKKA print "Palkka on", palkka, "euroa." main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 5 / 33

Loogiset operaattorit Halutaan lisätä tenttiesimerkkiin tarkistus: jos pisteet ovat alle 0 tai yli 100, ilmoitetaan virheellisistä pisteistä. Tarvittava ehto saadaan operaattorin or avulla: if pisteet < 0 or pisteet > 100: Tai-operaattori or on yksi loogisista operaattoreista. T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 7 / 33

Loogiset operaattorit, jatkoa Tärkeimmät loogiset operaattorit and ja or tai not ei Operaattorit and ja or ovat ehdollisia: jälkimmäisen operandin totuusarvo tutkitaan vain silloin, jos ensimmäisen operandin arvosta ei voida päätellä koko lauseen totuusarvoa. T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 8 / 33

Sisäkkäisiä if-käskyjä syote = raw_input("kerro tenttipisteesi.\n") pisteet = int(syote) if pisteet < 0 or pisteet > 100: print "Virheelliset pisteet!" else: if pisteet >= 50: print "Tentti meni lapi!" else: print "Reputit!" main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 10 / 33

Useita eri ehtoja syote = raw_input("kerro tenttipisteesi.\n") pisteet = int(syote) if pisteet < 0: print "Kelvottomat pisteet!" elif pisteet < 50: print "Arvosana on 0." elif pisteet < 60: print "Arvosana on 1." elif pisteet < 70: print "Arvosana on 2." elif pisteet < 80: print "Arvosana on 3." # Ohjelma jatkuu seuraavalla kalvolla. T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 12 / 33

Useita eri ehtoja (jatkuu) elif pisteet < 90: print "Arvosana on 4." elif pisteet <= 100: print "Arvosana on 5." else: print "Kelvottomat pisteet!" main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 14 / 33

Toistokäsky Usein ohjelma joutuu toistamaan samaa käskyä monta kertaa. Esimerkki: käyttäjä syöttää ohjelmalle 30 päivän lämpötilat. Ohjelma laskee niiden keskiarvon Samaa käskyä ei tarvitse kirjoittaa monta kertaa, jos käytetään toistokäskyä. Pythonissa on kaksi toistokäskyä, while ja for. While-käskyn yleinen muoto on while ehto: kasky T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 16 / 33

Kuuden kertotaulu while-käskyn avulla i = 1 while i <= 10: tulos = i * 6 print i, "* 6 =", tulos i += 1 main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 18 / 33

Esimerkki: lämpötilojen keskiarvo LKM = 30 i = 0 summa = 0.0 while i < LKM: rivi = raw_input("anna seuraava lampotila.\n") lampotila = float(rivi) summa = summa + lampotila i = i + 1 keskiarvo = summa / LKM print "Lampotilojen keskiarvo on", keskiarvo main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 20 / 33

Toinen versio lämpötilalaskurista: lukumäärä käyttäjältä rivi = raw_input("montako lampotilaa annat?\n") lkm = int(rivi) i = 0 summa = 0.0 while i < lkm: rivi = raw_input("anna seuraava lampotila.\n") lampotila = float(rivi) summa = summa + lampotila i = i + 1 if lkm > 0: keskiarvo = summa / lkm print "Lampotilojen keskiarvo on", keskiarvo else: print "Et antanut yhtaan lampotilaa." T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 22 / 33

Kolmas versio lämpötilalaskurista: lopetus pienellä luvulla print "Anna lampotiloja, lopeta -300:lla." lkm = 0 summa = 0.0 rivi = raw_input("anna ensimmainen lampotila.\n") lampotila = float(rivi) while lampotila > -300.0: summa = summa + lampotila lkm = lkm + 1 rivi = raw_input("anna seuraava lampotila.\n") lampotila = float(rivi) if lkm > 0: keskiarvo = summa / lkm print "Lampotilojen keskiarvo on", keskiarvo else: print "Et antanut yhtaan lampotilaa." T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 24 / 33

If-käsky toistokäskyn sisällä HELLERAJA = 25.0 print "Anna lampotiloja, lopeta -300:lla." hellepaivien_lkm = 0 rivi = raw_input("anna ensimmainen lampotila.\n") lampotila = float(rivi) while lampotila > -300.0: if lampotila >= HELLERAJA: hellepaivien_lkm += 1 rivi = raw_input("anna seuraava lampotila.\n") lampotila = float(rivi) print "Hellepaivia oli", hellepaivien_lkm, "kpl." main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 26 / 33

Toistokäsky for For-käskyn avulla voidaan käydä jonkun rakenteen alkiot järjestyksessä. Funktion range avulla voidaan generoida lukujono (oikeasti lista), jonka kaikki alkiot voidaan käydä läpi for-käskyn avulla. Esimerkiksi range(11) generoi lukujonon, joka sisältää luvut 0:sta 10:een asti. Voidaan kirjoittaa toistokäsky for i in range(11): tee jotain arvolle i jossa i saa vuorotellen arvot 0 10. T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 28 / 33

Esimerkki: kertotaulu for-käskyn avulla for i in range(11): tulos = i * 6 print i, "* 6 =", tulos main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 30 / 33

Lisää range-funktiosta Lukujonoja generoidessa voi antaa myös jonon ensimmäisen alkion, esimerkiksi range(1, 11) generoi lukujonon, jonka ensimmäinen alkio on 1 ja viimeinen 10. On myös mahdollista antaa jonon kahden peräkkäisen alkion väli, esimerkiksi range(1, 11, 2) generoi lukujonon, joka sisältää luvut 1, 3, 5, 7 ja 9. Väli voi olla myös negatiivinen, jolloin lukuja generoidaan ylhäältä alaspäin. Esimerkiksi range(10, 1, -2) generoi lukujonon, joka sisältää luvut 10, 8, 6, 4 ja 2. T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 31 / 33

Kertotaulu uudelleen for i in range(1, 11): tulos = i * 6 print i, "* 6 =", tulos main() T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 33 / 33