Létra

Létra

1. A dobások tárolása

dobasok = [3, 1, 1, 2, 1, 5, 5, 4, 4, 4, 1, 2, 3, 6, 4, 6, 1, 4]

Ez egy lista, amely tartalmazza a játékos összes dobását. A program akkor is működik, ha ezt a listát később más számokra cseréled.

🟦 2. A játék menetének kiszámítása

A játékos a mezőkön halad, ezért kell egy változó:

mezo = 0

Ez azt jelenti: a játékos még az 1-es mező előtt áll.

A mezok lista eltárolja, hogy minden dobás után hol állt:

mezok = []

A létrára lépések számát itt gyűjtjük:

letra_db = 0

🔁 3. A dobások feldolgozása

A program végigmegy minden dobáson:

for dobas in dobasok: 

      mezo += dobas

Ez azt jelenti: Hozzáadjuk a dobott számot a jelenlegi mezőhöz.

🪜 4. Létramező ellenőrzése

A feladat szerint létramező az, ami 10‑zel osztható:

  • 10

  • 20

  • 30

  • 40

Ha a játékos ilyen mezőre lép:

if mezo % 10 == 0: 

      mezo -= 3 

      letra_db += 1

Tehát:

  • visszalép 3 mezőt

  • növeljük a létrára lépések számát

📝 5. Az aktuális mező eltárolása

mezok.append(mezo)

Így a végén szépen ki tudjuk írni a játék menetét.

🖨️ 6. Kiírás a mintának megfelelően

2. feladat – a játék menete

print("2. feladat") 

print(" ".join(str(m) for m in mezok))

Ez így fog kinézni:

Kód2. feladat 3 4 5 7 8 13 18 22 26 27 28 27 27 33 37 43 44 48

3. feladat – hányszor lépett létrára?

print(f"A játék során {letra_db} alkalommal lépett létrára.")

4. feladat – befejezte-e a játékot?

A játék akkor ér véget, ha a játékos eléri vagy meghaladja a 45-öt.

if any(m >= 45 for m in mezok): 

       print("A játékot befejezte.")  

else: 

      print("A játékot abbahagyta.")

Az any() azt vizsgálja: van-e olyan mező, ami legalább 45.


# letra.py 

# 1. feladat – dobások tárolása

dobasok = [3, 1, 1, 2, 1, 5, 5, 4, 4, 4, 1, 2, 3, 6, 4, 6, 1, 4]

mezo = 0

mezok = []

letra_db = 0


# 2. és 3. feladat – játék menete + létrák számolása

for dobas in dobasok:

      mezo += dobas

      if mezo % 10 == 0: 

           mezo -= 3

           letra_db += 1

           mezok.append(mezo)


print("2. feladat")

print(" ".join(str(m) for m in mezok))


print("3. feladat")

print(f"A játék során {letra_db} alkalommal lépett létrára.")


# 4. feladat – befejezte-e a játékot?

print("4. feladat")

if any(m >= 45 for m in mezok):

     print("A játékot befejezte.")

else:

    print("A játékot abbahagyta.")


Vissza