Python feladatok és tesztek (308 feladat)

Az oldal folyamatos fejlesztés alatt áll. Ha észrevételed van, örülnénk, ha megosztanád velünk: info @ tanit . hu
iPhone-okra egy Python programozási lehetőség: Python 3IDE, Androidos mobilokra: QPython 3L. Van Online Python editor is :)

Tartalomjegyzék


09 Véletlen számok URL


09-00 Véletlen számok - teszt URL


Feladat leírás:

import random - a véletlenszámokat előállító modul összes lehetőségének elérése
from random import randint - csak a véletlen egész számokat előállító függvény elérése

randint(a, b) - egy véletlen egész szám előállítása (N), amelyre igaz, hogy a <= N <= b
randrange(a, b, step) - egy véletlen egész szám előállítása (N) az a-b intervallumból step-lépésközökkel előállított sorozatból, amelyre igaz, hogy a <= N < b. A step paraméter nem kötelező. Ha nincs megadva, akkor alapértelmezetten step=1

Példák:
# Egyjegyű pozitív véletlen szám előállítása
import random
x = random.randint(1, 9)

# Véletlen kétjegyű páros szám előállítása
from random import randrange
x = randrange(10, 99, 2)

Oldd meg az alábbi űrlap feladatait: 09 Véletlen számok - teszt

09-01 Véletlen számok (2) URL


Feladat leírás:
Hozz létre egy "09-01 Veletlen szamok.py" Python fájlt.
A mintának megfelelően tájékoztasd a felhasználót a program működéséről,
majd generálj 10 véletlen kétjegyű számot és írd ki őket egy sorban a konzolra.
Végeredmény minta (részlet):
09-01 Véletlen számok-0
Végeredmény minta (részlet):
09-01 Véletlen számok-1

09-02 Véletlen számok átlaga (3) URL


Feladat leírás:
Hozz létre egy "09-02 Veletlen szamok atlaga.py" Python fájlt.
Generálj le 10 db véletlen kétjegyű egész számot.
Írd ki a sorozatot növekvő sorrendben.
Számold ki az átlagukat kétféleképpen:
a) a Python beépített függvényeit használva
b) ciklust használva
Végeredmény minta (részlet):
09-02 Véletlen számok átlaga-0
Végeredmény minta (részlet):
09-02 Véletlen számok átlaga-1

09-03 Kitalálósdi (4) URL


Feladat leírás:
Hozz létre egy "09-03 Kitalalosdi.py" Python fájlt.
A felhasználó tippeljen meg egy véletlen egész számot amely 1-5 között van. Addig tippelhet, amíg el nem találja.
Ha nem egész számot ad meg, akkor írjuk ki, hogy ez nem egész szám, és tippelhet tovább.
Érjen véget a program, ha eltalálja a véletlen számot, vagy ha üres sztringet ad meg.
Minden esetben írd ki a program végén, hogy "Viszlát!"
Végeredmény minta (részlet):
09-03 Kitalálósdi-0
Végeredmény minta (részlet):
09-03 Kitalálósdi-1

09-04 Véletlen számsor (3) URL


Feladat leírás:
Hozz létre egy "09-04 Veletlen szamsor.py" Python fájlt.
Addig generáljunk véletlen egyjegyű számokat, amíg 1-nem lesz. A végén írjuk ki, hányadikra jött ki az 1-es szám.
Végeredmény minta (részlet):
09-04 Véletlen számsor-0
Végeredmény minta (részlet):
09-04 Véletlen számsor-1

09-05 Szám-tipp (4) URL


Feladat leírás:
Hozz létre egy "09-05 Szam-tipp.py" Python fájlt.
Generáljunk egy véletlen egyjegyű számot. Kérjünk meg a felhasználót, hogy tippelje meg.
Max 5 tippje lehet. Ha eltalált, akkor írjuk ki, hogy "Talált!".
Ha 5 próbából nem találja el, írjuk ki, hogy "Nem talált!".
Abban biztosak lehetünk, hogy mindig egész számot ad meg.
Minden esetben írd ki a program végén, hogy "Viszlát!"
Végeredmény minta (részlet):
09-05 Szám-tipp-0
Végeredmény minta (részlet):
09-05 Szám-tipp-1

09-06 Véletlen számok (3) URL


Feladat leírás:
Hozz létre egy "09-06 Veletlen szamok.py" Python fájlt.
Generálj le 30 db véletlen háromjegyű egész számot.
Írd ki a sorozatot emelkedő sorrendben, majd a legnagyobbat, legkisebbet és átlagukat a Python beépített függvényeit használva.
Végeredmény minta (részlet):
09-06 Véletlen számok

09-07 Véletlen számok (4) URL


Feladat leírás:
Hozz létre egy "09-07 Veletlen szamok.py" Python fájlt.
Generálj le 15 db véletlen kétjegyű egész számot.
Írd ki a sorozatot növekvő sorrendben, majd a legnagyobbat, legkisebbet és az átlagukat.
Az átlag számításánál az azonos számokat csak egy elemként vegyük figyelembe. Az egyedi elemeket tartalmazó sorozatot is írjuk ki.
Azaz például ha öt számról lenne szó, amelyek 2, 3, 4, 4, 4, akkor itt a 2, 3, 4 átlagát kell számolni.
Végeredmény minta (részlet):
09-07 Véletlen számok

09-08 Véletlen páros számok (4) URL


Feladat leírás:
Hozz létre egy "09-08 Veletlen páros szamok.py" Python fájlt.
Generáljon le 10 random kétjegyű, páros egész számot! Minden szám csak egyszer szerepelhet.
Végeredmény minta (részlet):
09-08 Véletlen páros számok-0
Végeredmény minta (részlet):
09-08 Véletlen páros számok-1

09-09 Történelem teszt (5) URL


Feladat leírás:
Középkori történelem fogalmakat kérdezünk ki.
1. Hozz létre egy "09-09 Tortenelem teszt.py" Python fájlt.
2. Kiindulásnak használd a mellékelt fájlt, amely tartalmazza a fogalmak és meghatározások listáját.
3. Véletlenszerűen válassz ki egy meghatározást, azt írd ki.
4. Kérdezz rá a felhasználótól, hogy a meghatározáshoz milyen fogalom társul.
5. Ha eltalálta a fogalmat, akkor írd ki, hogy "Helyes válasz!". Ha nem találta el, akkor írd ki, hogy "Rossz válasz. Helyesen: " és ide írd ki a helyes választ.
6. A válasz ellenőrzésekor a kis-nagybetű eltérések és a kezdő-záró szóközök ne számítsanak. Azaz akkor is tekintsük helyesnek a választ, ha azt a felhasználó nagybetűkkel írta és az elejére, végére gépelt több szóközt is.
7. Addig ismételd a kikérdezést, ameddig mindegyik fogalomra rá nem kérdeztél. Mindegyikre csak egyszer kérdezz rá.
8. A program kommunikációját a mintának megfelelően szövegezd!
Forrásfájlok (zip)
Végeredmény minta (részlet):
09-09 Történelem teszt-0
Végeredmény minta (részlet):
09-09 Történelem teszt-1

09-10 Angol szavak (4) URL


Feladat leírás:
Hozz létre egy "09-10 Angol szavak.py" fájlt.
Adott az alábbi 10 elemű lista angol-magyar szókészlettel.
Véletlenszerűen válasszon ki egy angol szót a készletből és kérdezze meg a felhasználótól a magyar megfelelőjét és írja ki, hogy helyes vagy helytelen a válasz a minta szerint.
szótár = [['bread', 'kenyér'], ['apple', 'alma'], ['thousand', 'ezer'], ['cloud', 'felhő'], ['window', 'ablak'], ['door', 'ajtó'], ['chess', 'sakk'], ['tram', 'villamos'], ['mouse', 'egér'], ['smart', 'okos']]
Végeredmény minta (részlet):
09-10 Angol szavak-1
Végeredmény minta (részlet):
09-10 Angol szavak-2

09-11 Három véletlen (3) URL


Feladat leírás:
Véletlen számokat generálunk egy adott tartományban.
Hozz létre egy "09-11 Harom veletlen.py" Python fájlt.
A minta szerint olvasd be egy szám tartomány két szélső értékét, majd generálj három véletlen számot amelyek ebbe a tartományba esnek.
Akkor is jól működjön a program, ha a tartomány elejét és végét fordított sorrendben adják meg.
A generált számok között lehetnek azonosak is.
A felhasználó egész számokat ad meg, azt nem kell ellenőrizni.
A program kommunikációját a mintának megfelelően szövegezd.
Végeredmény minta (részlet):
09-11 Három véletlen-1
Végeredmény minta (részlet):
09-11 Három véletlen-2

09-12 Véletlen kerekítés (4) URL


Feladat leírás:
Véletlen számokkal végzünk számításokat.
Hozz létre egy "09-12 Veletlen kerekites.py" Python fájlt.
Generálj egy háromjegyű, pozitív, véletlen egész számot.
Ezt a minának megfelelően írd ki a konzolra, majd írd ki ennek a százasokra felfelé és lefelé kerekített értékét is, és azt, hogy mennyivel kevesebb a kerekített érték 1000-nél.
A program kommunikációját a mintának megfelelően szövegezd.
Végeredmény minta (részlet):
09-12 Véletlen kerekítés-0
Végeredmény minta (részlet):
09-12 Véletlen kerekítés-1

09-13 Háromszög (4) URL


Feladat leírás:
Egy véletlenszerűen generált háromszög oldalhosszát ellenőrizzük.
Hozz létre egy "09-13 Haromszog.py" Python fájlt.
Generálj két véletlen pozitív egész számot 10 és 20 között, amelyek egy háromszög két oldalának mérőszámai.
Írd ki ezek értékét, majd kérd be a felhasználótól a harmadik oldal hosszát.
Abban biztosak lehetünk, hogy a felhasználó pozitív egész számot ad meg, azt nem kell ellenőrizni.
Ellenőrizd, hogy a felhasználó által megadott érték valóban lehet-e az adott háromszög harmadik oldala.
Ha nem, akkor írd ki, hogy helytelen az adat. Különben írd ki a legnagyobb és legkisebb oldal közti különbséget.
A program kommunikációját a mintának megfelelően szövegezd.
Végeredmény minta (részlet):
09-13 Háromszög-0
Végeredmény minta (részlet):
09-13 Háromszög-1

09-14 Egyenlőség (4) URL


Feladat leírás:
Két véletlen számmal állítunk fel egyenlőséget.
Hozz létre egy "09-14 Egyenloseg.py" Python fájlt.
A mintának megfelelően tájékoztasd a felhasználót a program működéséről
Generálj két darab 2 jegyű pozitív egész számot.
Az első legyen 40-60 közötti páros szám, a második 20 és 30 közötti bármilyen egész.
Írd ki őket a minta szerint egyenlőségként, ahol a kisebb duplája egyenlő a nagyobbal.
Kérdezd meg a felhasználót, hogy igaz-e az egyenlőség.
Értékeld a válaszát és írd ki, hogy helyes-e a válasz vagy sem.

A program kommunikációját a mintának megfelelően szövegezd!
Végeredmény minta (részlet):
09-14 Egyenlőség-0
Végeredmény minta (részlet):
09-14 Egyenlőség-1
Végeredmény minta (részlet):
09-14 Egyenlőség-2

09-15 Esemény vége (4) URL


Feladat leírás:
Egy esemény időpontját kérjük be és megmondjuk, meddig tart.
Hozz létre egy '09-15 Esemeny vege.py' python fájlt.
Olvass be egy kezdő időpontot, majd generáljuk le az esemény hosszát a 45-90 perces intervallumból és írjuk ki, mikor lesz vége a programnak.
A felhasználó helyes adatokat ad meg, azt nem kell ellenőrizni.
A program kommunikációját a mintának megfelelően szövegezd!
Végeredmény minta (részlet):
09-15 Esemény vége-0
Végeredmény minta (részlet):
09-15 Esemény vége-1

09-16 Kockajáték (3) URL


Feladat leírás:
Kockajátékot játszik a felhasználó a géppel.
Hozz létre egy '09-16 Kockajatek.py' python fájlt.
Kérd be a felhasználótól, hogy hányast dobott. Ez egy egész szám 1-6 között.
Utána generálj egy véletlen számot 1-6 között, ezt a "gép dobta", majd írd ki, hogy ki nyert.
Tételezzük fel, hogy a felhasználó helyes adatokat ad meg, azt nem kell ellenőrizni.
A program kommunikációját a mintának megfelelően szövegezd!
Végeredmény minta (részlet):
09-16 Kockajáték-0
Végeredmény minta (részlet):
09-16 Kockajáték-1
Végeredmény minta (részlet):
09-16 Kockajáték-2

09-17 ABC sorrend (4) URL


Feladat leírás:
Betűk ABC sorrendjét állapítjuk meg.
Hozz létre egy '09-17 ABC sorrend.py' python fájlt.
Generáljunk két különböző betűt az angol ABC-ből (ezek ASCII kódja: 97='a' ... 122='z'). Írjuk ki ezeket a mintának megfelelően és kérdezzük meg a felhasználót, hogy melyik van előbb az ABC-ben.
A válasz alapján írjuk ki, hogy a válasz helyes-e vagy sem.
A felhasználó helyes adatokat ad meg, azaz egy darab betűt, azt nem kell ellenőrizni.
A program kommunikációját a mintának megfelelően szövegezd!
Végeredmény minta (részlet):
09-17 ABC sorrend-0
Végeredmény minta (részlet):
09-17 ABC sorrend-1
Végeredmény minta (részlet):
09-17 ABC sorrend-2

09-18 Nagyobb (3) URL


Feladat leírás:
Számok közül keressük a nagyobbat.
Hozz létre egy '09-18 Nagyobb.py' python fájlt.
Generáljunk két darab különböző véletlen pozitív kétjegyű egész számot, a-t és b-t, majd írjuk is ki ezeket.
Kérdezzük meg a felhasználót, hogy az a vagy a b a nagyobb. A mintának megfelelően értékeljük ki a választ.
A felhasználó helyes adatokat ad meg, azaz egy "a" vagy egy "b" betűt, azt nem kell ellenőrizni.
A program kommunikációját a mintának megfelelően szövegezd!
Végeredmény minta (részlet):
09-18 Nagyobb-0
Végeredmény minta (részlet):
09-18 Nagyobb-1
Végeredmény minta (részlet):
09-18 Nagyobb-2

09-19 Osztható (3) URL


Feladat leírás:
Oszthatóságot állapítunk meg.
Hozz létre egy '09-19 Oszthato.py' python fájlt.
Generáljunk egy véletlen pozitív kétjegyű egész számot.
Kérdezzük meg a felhasználót, hogy oszható-e hárommal. A mintának megfelelően értékeljük ki a választ.
Ha a felhasználó nem azt adja válaszul, hogy "osztható" vagy "nem osztható", akkor kérjük újra a választ.
A program kommunikációját a mintának megfelelően szövegezd!
Végeredmény minta (részlet):
09-19 Osztható-0
Végeredmény minta (részlet):
09-19 Osztható-1
Végeredmény minta (részlet):
09-19 Osztható-2

09-20 Százalék (3) URL


Feladat leírás:
Két véletlen szám maximumhoz vett százalékarányát állapítjuk meg.
Hozz létre egy "09-20 Szazalek.py" Python fájlt.
Kérj be a felhasználótól egy pozitív egész számot.
Utána generáljunk két egész számot 1 és a felhasználó által megadott (maximális) szám között, majd írjuk ki, hogy a két szám hány százaléka a maximumnak.
A százalék értékeket egész számra kerekítsd.
A felhasználó jó értéket ad meg, azt nem kell ellenőrizni.

A program kommunikációját a mintának megfelelően szövegezd.
Végeredmény minta (részlet):
09-20 Százalék-0
Végeredmény minta (részlet):
09-20 Százalék-1

09-21 TikTok lájk (3) URL


Feladat leírás:
TikTok lájkot tippelünk.
Hozz létre egy "09-21 TikTok lajk.py" Python fájlt.
Képzeld el, hogy feltöltöttél egy új TikTok videót, és kíváncsi vagy, hány like-ot kapott. A rendszer véletlenszerűen generálja, hogy mennyi like-ot ért el a videód, te pedig megpróbálod megtippelni!
1.) Kérd be a felhasználótól, hogy tippelje meg, hány like-ot kapott a videója. A felhasználó jó értéket ad meg, azt nem kell ellenőrizni.
2.) Generálj egy véletlen számot 1 és 1000 között (ez lesz a „valódi” like szám).
3.) Számold ki a különbséget a tipp és a valós like szám között.
4.) Adj visszajelzést:
- Ha pontos a tipp, akkor írd ki: "Pontosan eltaláltad! :)"
- Ha a tipp nagyon közel van (50-en belül), írd ki: "Majdnem eltaláltad! ;)"
- Más esetben: "Nem rossz, de messze voltál. :D"

A program kommunikációját a mintának megfelelően szövegezd.
Végeredmény minta (részlet):
09-21 TikTok lájk-0
Végeredmény minta (részlet):
09-21 TikTok lájk-1
Végeredmény minta (részlet):
09-21 TikTok lájk-2

09-22 Könyvkihívás (3) URL


Feladat leírás:
Könyvkihívás
Hozz létre egy "09-22 Konyvkihivas.py" Python fájlt.
Képzeld el, hogy részt veszel egy könyvolvasó kihíváson. A rendszer véletlenszerűen kiválasztja, hány oldalas könyvet kaptál. A te feladatod, hogy megmondd, hány oldalt szeretnél ma elolvasni.
A program véletlenszerűen generál egy könyv oldalszámot 100 és 300 között.
A felhasználó megadja, hány oldalt olvasott aznap.
A program kiszámolja, mennyit olvastál a könyvből százalékosan.
Kiírja az eredményt:
- Ha 100%-ot olvastál: "Gratulálok! Kiolvastad a könyvet!"
- Ha 80% felett olvastál: "Nagyon közel jársz! Már majdnem vége!"
- Ha 50% felett: "Féltávnál tartasz! Csak így tovább!"
- Ha kevesebb mint 50%: "Még van mit olvasni! Ne add fel!"

A program kommunikációját a mintának megfelelően szövegezd.
Végeredmény minta (részlet):
09-22 Könyvkihívás-0
Végeredmény minta (részlet):
09-22 Könyvkihívás-1
Végeredmény minta (részlet):
09-22 Könyvkihívás-2
Végeredmény minta (részlet):
09-22 Könyvkihívás-3

09-23 Szám-tipp (3) URL


Feladat leírás:
Hozz létre egy "09-23 Szam-tipp.py" Python fájlt.
A gép gondol egy számra 1 és 50 között (véletlenszám).
A felhasználó tippel.
Ha nem találta el, a program segít:
"A szám nagyobb."
"A szám kisebb."

A program mindaddig fut, amíg a játékos el nem találja a számot.
A végén kiírja, hány próbálkozásból sikerült.
A program kommunikációja feleljen meg a mintának.
Végeredmény minta (részlet):
09-23 Szám-tipp-0
Végeredmény minta (részlet):
09-23 Szám-tipp-1
Ugrás az elejére