python bevezető foglalkozás -...

54
Python bevezető foglalkozás Python bevezető foglalkozás program, programozás, programnyelvek a Python nyelv és az IDLE környezet változók és adattípusok konzol input és output (input(), print()) vezérlési szerkezetek (if/else, while)

Upload: others

Post on 17-Oct-2019

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Python bevezető foglalkozás

program, programozás, programnyelvek

a Python nyelv és az IDLE környezet

változók és adattípusok

konzol input és output (input(), print())

vezérlési szerkezetek (if/else, while)

Page 2: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Mi a program?

• utasítások sorozata

• valamilyen feladat megoldására

• amit egy számítógép hajt végre

2

Page 3: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Programozás

1. feladat megértése

2. tervezés

3. kódolás

4. tesztelés

5. hibák javítása

6. továbbfejlesztés

3

A programozás során a feladat megoldását a gép által egyértelműen végrehajtható, apró lépésekre kell bontani!

Page 4: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Labirintus

4

Lehetséges utasítások:Menj előre egy lépést!Fordulj jobbra!Fordulj balra!Állj meg! Megérkeztél.

Feladat:

A fenti utasítások segítségével írj programot mely átvezeti a cicát a labirintuson!

Page 5: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Változók

• egy változóra gondolhatsz úgy, mint egy névvel ellátott tárhelyre

• a változóban valamilyen értéket tárolhatsz (pl. egy számot vagy egy szöveget)

• a változó értékét bármikor felülírhatod

• a tárolt értéket a változó nevének leírásával hívhatod elő

• változókkal végezhetsz műveleteket

5

a legyen 6s legyen "hello"b legyen a + 2a legyen ba legyen a + 1c legyen a + b

Page 6: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Egyjegyű vagy többjegyű?

6

Utasítások:... változó értéke legyen ... Ha ... akkor folytasd a ...-dik sortólÍrd ki ... változó értékétStop

Program:1| X változó értéke legyen 82| T1 változó értéke legyen "Ez egy egyjegyű szám."3| T2 változó értéke legyen "Ez egy többjegyű szám."4| Ha X > 9 akkor folytasd a 7-dik sortól5| Írd ki T1 változó értékét6| Stop7| Írd ki T2 változó értékét8| Stop

Hogy működik?

Elemezd ezt a példát úgy, hogylépésenként követed a program futását!

Page 7: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Páros számok

7

Készíts programot!

Ezen utasítások segítségével írj programot, mely kiírja a páros számokat 1-től 100-ig!

Utasítások:... változó értéke legyen ... Ha ... akkor folytasd a ...-dik sortólÍrd ki ... változó értékétStop

Page 8: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

8

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

Page 9: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

9

Változók:X = 2

Page 10: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

10

2

Változók:X = 2

Page 11: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

11

2

Változók:X = 4

Page 12: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

12

2

Változók:X = 4

Page 13: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

13

24

Változók:X = 4

Page 14: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

14

24

Változók:X = 6

Page 15: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

15

24

Változók:X = 6

Page 16: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

16

246

Változók:X = 6

Page 17: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

17

246

Változók:X = 8

Page 18: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

18

246

Változók:X = 8

Page 19: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

19

2468

Változók:X = 8

Page 20: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

20

80828486889092949698100

Változók:X = 100

Page 21: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

21

80828486889092949698100

Változók:X = 102

Page 22: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

22

80828486889092949698100

Változók:X = 102

Page 23: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 2-dik sortól5| Stop

23

80828486889092949698100

Változók:X = 102

Page 24: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Programozási hibák

24

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X < 101 akkor folytasd a 3-dik sortól5| Stop

Mit ír ki?

Vizsgáld meg ezt a programot! Mit ír ki?

Program:1| X változó értéke legyen 22| Írd ki X változó értékét3| X változó értéke legyen X+24| Ha X > 0 akkor folytasd a 2-dik sortól5| Stop

Mit csinál ez a program?

Vizsgáld meg ezt a programot! Hogyan viselkedik? Mit ír ki?

Page 25: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Programozási nyelvek

• programok írására szolgáló mesterséges nyelvek

– utasításkészlet („szótár”)

– szintaktikai szabályok („nyelvtan”)

• sokféle programozási nyelv létezik

– pl. Scratch, Python, JavaScript, PHP, Java, C, Ada ...

25

Page 26: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

A Python nyelv és az IDLE környezet

• Python– könnyen elsajátítható és használható– sok előre megírt modult tartalmaz

• modul = hasznos „programocskák” halmaza

– nagy cégek is használják• Google, Pixar, NASA, ...

• IDLE (Integrated Development and Learning Environment)

– integrált fejlesztő és tanuló környezet– alkalmas Python programok írására és futtatására

26

Page 27: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

terminálablak(ebben fut a program)

IDLE ablakok

27

kódablak(ebben írjuk a programot)

File New Filevagy CTRL-N

Page 28: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

terminálablak(ebben fut a program)

terminálablak(ebben fut a program)

IDLE ablakok

28

kódablak(ebben írjuk a programot)

Run Run Modulevagy F5

Futtatás előtt az IDLE szeretné elmenteni a programot. Hozz létre egy könyvtárat, amibe Python programjaidat mented! A Python programok neve bármi lehet, a kiterjesztésük általában .py (például HelloWorld.py)

Page 29: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Kisérletezz!

29

print("Üdv mindenkinek!")print("Pythonban programozni jó.")

nev = "Andris"print("Hello " + nev + "!")print("Pythonban programozni jó.")

nev = "Andris"kor = 12print(nev + " " + kor + " éves.")

print(12)

print(12 + 24)

Másold le ezeket a programokat és próbáld őket futtatni! Mit tapasztalsz?

1

2

3

4

5

1. Minden print() új sorba ír.

2. Nem csak szöveget, hanem számotis ki lehet íratni.

3. Ha a print() bemenete egy kifejezés,akkor azt előbb kiértékeli a gép és az eredményt írja ki.

4. Szövegek „összeadása” az össze-fűzésüket jelenti.

5. Hoppá!

Page 30: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Kisérletezz!

30

Hozz létre egy változót, legyen a neve A és az értéke 2!Írd le a változó nevét és nyomd meg az ENTER-t! Mit tapasztalsz?Hozz létre egy másik változót, ennek legyen a neve B és az értéke 4!Írd le a változó nevét és nyomd meg az ENTER-t! Mit tapasztalsz?Most írd le, hogy A+B és nyomd meg az ENTER-t! Mit tapasztalsz?Most írd le, hogy 2*(A+B) és nyomd meg az ENTER-t! Van egy számológéped!Hozz létre egy harmadik változót, ennek legyen a neve C és az értéke A*B!Írd le a változó nevét és nyomd meg az ENTER-t! Mit tapasztalsz?

Gyors kisérletezéshez használhatod a terminál ablakot is! Próbáld ki!

Page 31: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Adattípusok

• egyszerű beépített adattípusok

– egész szám (integer)

– tört (float)

– szöveg (string): "..." vagy '...'

– igaz/hamis (Boolean): True, False

• egy változó típusát nem kell előre megmondani, akkor dől el, amikor értéket kap!

31

a = 5b = 6.5c = "szöveg"d = 'ez is szöveg'e = Truec = -10

Page 32: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Típus hiba

32

nev = "Andris"kor = 12print(nev + " " + kor + " éves.")

print(nev + " " + kor + " éves.")TypeError: must be str, not int

szöveg (str) egész (int)

Page 33: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Típus átalakítás (konverzió)

• adattípusok közötti átalakítást végezhetsz az str() és az int() átalakító függvényekkel:– str(): egész vagy tört szám szöveg

– int(): szöveg egész szám

33

nev = "Andris"kor = 12print(nev + " " + str(kor) + " éves.")

Page 34: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Andris és apa együttes kora

34

andris = 12apa = "41"print("Andris " + ___(andris) + " éves.")print("Apa " + apa + " éves.")egyutt = andris + ___(apa)print("Andris és apa együtt " + ___(egyutt) + " éves.")

Egészítsd ki ezt a programot!

Írd be a ___ helyére a megfelelő átalakító függvény nevét (int vagy str), hogy a program jól működjön!

Page 35: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Andris és apa együttes kora

35

andris = 12apa = "41"print("Andris " + str(andris) + " éves.")print("Apa " + apa + " éves.")egyutt = andris + int(apa)print("Andris és apa együtt " + str(egyutt) + " éves.")

Page 36: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Konzol input• az input() függvénnyel bekérhetsz valamilyen adatot a

felhasználótól

• az input() függvény bemeneteként (a zárójelek között) megadhatsz egy szöveget, amit a gép kiír a képernyőre

• az input() visszatérési értéke a felhasználó által a konzolon beírt adat, amit egy változóban is tárolhatsz– vigyázat: a visszatérési érték szöveg (string) típusú !

36

nev = input("Hogy hívnak? ")kor = input("Hány éves vagy? ")print("Hello " + nev + "!")print("Biztos jó " + kor + " évesnek lenni.")

Page 37: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

A téglalap kerülete

alapműveletek számokkal:

– összeadás: +

– kivonás: –

– szorzás: *

– osztás: /

37

Írj programot!

Írj programot, mely bekéri egy téglalap két oldalának hosszát a felhasználótól, majd kiszámolja és kiírja a téglalap kerületét!

Ha a téglalap oldalai a és b hosszúak, akkor kerülete 2*(a+b)

Page 38: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

A téglalap kerülete

38

a = int(input("A téglalap egyik oldalának hossza: "))b = int(input("A téglalap másik oldalának hossza: "))print("A téglalap kerülete: " + str(2*(a+b)))

a = int(input("A téglalap egyik oldalának hossza: "))

int( )

input("A téglalap egyik oldalának hossza: ")

a

szöveg

egész szám

Page 39: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Feltételes elágazás

• egy programrész végrehajtását feltételhez kötheted az if utasítással (az if jelentése magyarul ha)

• az if párja az else (jelentése egyébként); az else utáni programrész akkor hajtódik végre, ha az if feltétele nem teljesül

39

szam = int(input("Írj be egy számot! "))if (szam > 100):

print("Ez egy nagy szám.")else:

print("Ez egy kicsi szám.")

Ügyelj a kettőspontra!Figyeld meg

a behúzásokat!

Page 40: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Feltételes elágazás

40

if <feltétel>:

else:

Ez az utasításblokkhajtódik végre haa <feltétel> igaz

Ez az utasításblokkhajtódik végre haa <feltétel> hamis

Az azonos méretűbehúzással rendelkező,

egymás utáni sorokegy összetartozóblokkot alkotnak

A <feltétel> egy kifejezés,melynek értéke igaz (True) vagy hamis (False) lehet

Page 41: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Feltételes elágazás

41

if <feltétel>:

else:

<feltétel> igaz?igen nem

Page 42: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Többszörös elágazás

42

Módosítsd ezt a programot!

Módosítsd ezt a programot úgy, hogy három esetet különböztessen meg:• ha a szám nagyobb, mint 100, akkor írja ki, hogy ez egy nagy szám,• ha a szám kisebb, mint 10, akkor írja ki, hogy ez egy kicsi szám,• egyébként írja ki, hogy a szám se nem kicsi, se nem nagy!

szam = int(input("Írj be egy számot! "))if (szam > 100):

print("Ez egy nagy szám.")else:

print("Ez egy kicsi szám.")

Page 43: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Többszörös elágazás

43

szam = int(input("Írj be egy számot! "))if (szam > 100):

print("Ez egy nagy szám.")else:

if (szam < 10):print("Ez egy kicsi szám.")

else:print("Ez egy se nem kicsi, se nem nagy szám.")

Page 44: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Ismétlés

44

Írj programot!

Írj programot, mely bekér egy 100-nál nagyobb számot a felhasználótól! Ha a szám valóban nagyobb, mint 100, akkor köszönje meg a számot, de ha nem, akkor ismét próbáljon meg bekérni egy 100-nál nagyobb számot! 3 sikertelen próbálkozás után a program írja ki, hogy „Feladom” és fejezze be a futást!

Page 45: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Ismétlés

45

szam = int(input("Írj be egy 100-nál nagyobb számot! "))if (szam > 100):

print("Köszönöm!")else:

szam = int(input("Írj be egy 100-nál nagyobb számot! "))if (szam > 100):

print("Köszönöm!")else:

szam = int(input("Írj be egy 100-nál nagyobb számot! "))if (szam > 100):

print("Köszönöm!")else:

print("Feladom!")

Page 46: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

„Nem adom fel, míg nem robbanok szét...”

• Mi a helyzet, ha nem adjuk fel, hanem addig kérjük a számot, amíg 100-nál nagyobbat nem kapunk?

• erre használhatjuk a while ciklust (a whilejelentése amíg):

46

szam = 0while (szam <= 100):

szam = int(input("Írj be egy 100-nál nagyobb számot! "))print("Köszönöm!")

Page 47: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Ismétlés while ciklussal

47

while <feltétel>:

Ez az utasításblokkmindaddig újra és újravégrehajtódik amíg a <feltétel> igaz

Itt is a behúzás jelzia while-hoz tartozó,

ismételendőutasításblokkot

A <feltétel> egy kifejezés,melynek értéke igaz (True) vagy hamis (False) lehet

Page 48: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Ismétlés while ciklussal

48

while <feltétel>: <feltétel> igaz?igen nem

Page 49: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Gondoltam egy számra!

49

Feladat

Olyan programot kezdtünk el írni, mely kisorsol egy véletlen számot 1 és 100 között, majd arra kéri a felhasználót, hogy találja ki a sorsolt számot. A program úgy segíti a felhasználót, hogy annak minden tippje után kiírja, hogy a sorsolt szám nagyobb vagy kisebb, mint a felhasználó tippje. A program mindaddig kéri a felhasználó tippjeit, amíg a felhasználó ki nem találja a sorsolt számot.

Egészítsd ki a hiányos programot!

Page 50: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Gondoltam egy számra!

50

from random import randint

szam = randint(1, 100)print("Gondoltam egy számra 1 és 100 között.")

...while (...):

tipp = ...if (...):

print("Nem, ennél kisebbre gondoltam.")else:

if (...):print("Nem, ennél nagyobbra gondoltam.")

else:print("Igen, eltaláltad!")

Page 51: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Összefoglalás

• program, programozás, programnyelvek

• a Python nyelv és az IDLE környezet– változók és adattípusok: egész, szöveg, igaz/hamis

– műveletek szövegekkel és számokkal

– típus átalakító függvények: int(), str()– konzol input/output: input(), print()

– feltételes elágazás: if/else

– ismétlés: while

52

Page 52: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

További anyagok

• on-line:

– https://www.python.org/• https://docs.python.org/3/

• https://www.python.org/downloads/

– http://python.hu/ • http://python.hu/magyar-nyelvu-dokumentaciok

• http://python.hu/peldaprogramok

53

http://harp.pythonanywhere.com/python_doc/tutorial/index.html

Page 53: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

További anyagok

• könyvek

– Gérard Swinnen, Tanuljunk meg programozni Python nyelven, 2005

– Koós Antal, Python a gépben, TypoTeX 2016

54

http://mek.oszk.hu/08400/08435/08435.pdf

http://www.interkonyv.hu/konyvek/koos_antal_python_a_gepben

Page 54: Python bevezető foglalkozás - szentendre.coderdojo.huszentendre.coderdojo.hu/wp-content/uploads/python-intro-2018.pdfPython bevezető foglalkozás Programozás 1. feladat megértése

Python bevezető foglalkozás

Készítette:Buttyán Levente

[email protected] Szentendre

2018

55