Hirdetés
- Fotók, videók mobillal
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Xiaomi 15T Pro - a téma nincs lezárva
- Milyen okostelefont vegyek?
- iPhone topik
- Samsung Galaxy A56 - megbízható középszerűség
- Honor Magic V2 - origami
- Luxuspóráz: okosláncot akasztana a nyakadba az Apple
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Csíptetős dizájn, 9 órás üzemidő és nyitott kialakítás a Sony új fülesében
Új hozzászólás Aktív témák
-
cousin333
addikt
válasz
XP NINJA
#446
üzenetére
Így első blikkre azért nem működött a második feladatod a függvényes módszerrel, mert nem is hívtad meg. A végén feladat_2 helyett feladat_2()-t kellett volna írni.
Szerintem egyébként mindkét megoldás lehet jó, bár az ilyen egymásra épülő feladatoknál talán nagyobb "érettséget" sugall egy harmadik módszer: a kettő kombinációja. Ilyenkor folyamatosan adod hozzá a függvényeket, amik egy jól meghatározott funkciót hajtanak végre, ami nem feltétlenül esik egybe a (teljes) kiírásbeli feladattal. Ezeket pedig egy "fő programban" hívogatod meg szükség szerint.
A példádban ott a 2. feladat, ami annak eldöntése, hogy foglalt-e egy hely, vagy sem. Ebből készíthetnél egy foglaltsag_ellenorzes(lista, x, y) nevű függvényt, ami csak annyit csinál, hogy megnézi a lista-t, hogy az x, y hely foglalt-e (igen/nem), majd a feladathoz kapcsolódva megcsinálod a "körítést". Pl:
def foglaltsag_ellenorzes(lista, sor, szek):
if lista[sor][szek] == "x":
print("A szek foglalt")
else:
print("A szek ures")
# 2. feladat
sorszam = int(input("Adja meg a sor szamat: "))
szekszam = int(input("Adja meg a szek szamat: "))
foglaltsag_ellenorzes(lista, sorszam-1, szekszam-1)Ha már egyszer elkészült egy függvény, vagy megvan egy adat, akkor azt nem kell ismételni. Mondjuk a hármas példában feleslegesen olvasod be újra a foglaltsag.txt fájlt, hiszen azt már az első feladatnál megtetted. De ahhoz is lehetne egy sima fajl_beolvasas(fajlnev) függvényed, aminek csak a fájl listába olvasása lenne a dolga.
Két további megjegyzés a beolvasáshoz: jobb lenne mindezt a with kifejezéssel megtenni, ami automatikusan zárja is a fájlt. A másik, hogy szerintem felesleges a sorokat is külön listaelemekre bontani, hiszen egy-egy sor az tulajdonképpen egy sztring, ami eleve karakterenként indexelhető. Pl.:
def fajl_beolvasas(fajlnev):
with open(fajlnev, "r") as f:
lista = [line.strip() for line in f]
return lista
lista = fajl_beolvasas("foglaltsag.txt")
Új hozzászólás Aktív témák
- Milyen légkondit a lakásba?
- Fotók, videók mobillal
- Filmvilág
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Milyen billentyűzetet vegyek?
- Gitáros topic
- Xiaomi 15T Pro - a téma nincs lezárva
- Milyen RAM-ot vegyek?
- Milyen okostelefont vegyek?
- Fülbemászó belépővel készül a ChatGPT a hardverpiacon
- További aktív témák...
- Apple Magic Trackpad 2
- P14s Gen5 14.5" 3K IPS Ultra 7 165H RTX 500 Ada 32GB 512GB NVMe ujjlolv IR kam gar
- WD Black SN850X 8TB M.2 NVME PCI-E 4.0 x4 - Új, 1 év garancia - 7200-6600 MBs - Eladó!
- Thinkpad X1 Fold 16 ,16.3" 2.5K összehajtható OLED érintő, i5-1230U ,16GB, 512GB NVMe,gar
- Thinkpad E14 Gen7 14" 3K IPS Ultra 7 255H 16GB 512GB NVMe ujjlolv IR kam gar
- Samsung Galaxy Xcover Pro / 4/64GB / Kártyafügetlen / 12Hó Garancia
- Samsung Galaxy A55 5G / 8/256GB / Kártyafüggetlen / 12Hó garancia
- HIBÁTLAN iPhone 14 512GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3922
- Bomba ár! HP EliteBook 840 G6 - i5-8GEN I 8GB I 256SSD I 14" FHD I HDMI I Cam I W11 I Gari!
- Honor 200 Pro 512GB,Újszerű,Dobozaval,12 hónap garanciával
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest


