
86_KIVALASZTAS.py
86_KIVALASZTAS.py

nev = ["Anna", "Adam", "Mate", "Laci", "Kati", "Eva", "Pali", "Peti"]
# Kiírja a neveket sorszámmal
for i in range(len(nev)):
print(f"{i+1} {nev[i]}")
# Bekéri a felhasználótól egy sorszámot
k = int(input("Kérem a sorszámot: "))
# Kiírja a kiválasztott nevet
if 1 <= k <= len(nev):
print(f"{k} {nev[k-1]}")
else:
print("Érvénytelen sorszám!")
Az adatelemző
Egy történet, amely egy adatelemző munkáját mutatja be, miközben egy névsor rendezettségét vizsgálja. A történetben minden fontos lépést kód formájában is mellékelek.
Egy modern adatelemző, Márk, éppen a reggeli kávéját kortyolgatta, amikor egy érdekes feladat érkezett hozzá. Az ügyfél azt kérte, hogy ellenőrizze, vajon egy adott névsor rendezett-e ábécé sorrendben.
nev = ["Anna", "Adam", "Mate", "Laci", "Kati", "Eva", "Pali", "Peti"]
Ez a kapott névsor, amelyet átvizsgálni kell. Ha nincs ábécé sorrendben, fel kell jegyezni az eltéréseket.
Márk először gyorsan megszámolta, hány név szerepel a listában, hogy megfelelő ciklusokat tudjon írni az elemzéshez.
n = len(nev)
A len() függvény segítségével meghatározza a névsor hosszát, ami 8 név.
Először feltételezte, hogy a névsor már rendezett, és csak akkor módosítja ezt az elképzelést, ha rendellenességet talál.
q = False
A q változó tárolja, hogy történt-e csere a listában. Kezdetben False, mert még nem ellenőrizte a neveket.
Márk elkezdte feldolgozni a névsort. Egy while ciklusban addig futtatta az ellenőrzést, amíg nem volt biztos abban, hogy a lista helyes sorrendben van.
while not q: q = True
A ciklus addig fut, amíg a lista nem rendezett. Az elején q = True, mert feltételezi, hogy nincs szükség módosításra.
Sorban elkezdte összehasonlítani az egymás melletti neveket. Ha egy név megelőzi a következőt az ábécé sorrendben, akkor csere történik.
for i in range(n - 1):
if nev[i] >= nev[i + 1]:
nev[i], nev[i + 1] = nev[i + 1], nev[i] q = False
Ha egy név nagyobb vagy egyenlő az utána következőnél, akkor cseréli őket. �� nev[i], nev[i + 1] = nev[i + 1], nev[i] – Python egy egyszerű helycserés megoldást kínál.
Márk végül megnézte, hogy történt-e csere. Ha nem volt módosítás, akkor a lista már helyes sorrendben volt.
if q: print("Rendezett")
else: print("Nem rendezett")
Ha q értéke True maradt, akkor a névsor rendezett volt, és kiírta ezt az eredményt. Ha volt csere, akkor jelezte: "Nem rendezett", és további rendezésre volt szükség.
Amikor Márk futtatta a programot, a kijelzőn megjelent az eredmény:
"Rendezett" ✅
Márk mosolyogva hátradőlt. "Az adatok mindig megmondják az igazságot!" – mondta magának, és elégedetten belekortyolt a kávéjába.