Új hozzászólás Aktív témák
-
cousin333
addikt
válasz
szaszayanou #624 üzenetére
Nem találtam a feladatsort, ezért az általad írtakra hagyatkozom:
Az első feladatban nem zártad be a megnyitott fájlt. Ezt megelőzheted a with használatával, az automatikusan bezárja, és amúgy is a preferált mód. Megnyitjuk a fájlt, egy lépésben beolvassuk és a sortörések (\n) mentén szétszedjük:
with open('D:\\kiserlet.txt', 'r') as f:
kiserlet = f.read().split('\n')A második példában feltétlenül számokat kell beírni? Használhatnád a random könyvtár choice függvényét is, ami egy lista-szerű elemből választ ki egyet találomra. Ez a lista most persze fej vagy írás:
valasztek = ('F', 'I')
tipp = input("Fej (F) vagy írás (I)? ")
if tipp == random.choice(valasztek):
print("Eltaláltad!")
else:
print("Sajnos tévedtél!")A harmadik feladat megoldása jó. Esetleg még így lehetne:
print("A kiserlet {} mintabol allt.".format(len(kiserlet)))
Tekintve, hogy a fenti beolvasás nyomán a kiserlet egy lista, a negyedik feladat megoldásához felesleges a for ciklus, és használhatjuk a sztring formázást is a céljainkhoz.
arany = kiserlet.count("F") / len(kiserlet)
print("A fejek relatív gyakorisága {:.2%}".format(arany))Az utolsó feladat pontos célja nem elég világos számomra, ezért most feltételezem, hogy nem lapolódhatnak át az "FF"-ek, tehát az "FFF" csak egynek számít, az "FFFF" meg kettőnek. Ebben az esetben használhatunk beépített függvényt, de ehhez a listánkból először egy sztringet gyártanunk a join használatával. Így egy lépésből megvan a kívánt szám:
dupla = "".join(kiserlet).count("FF")
print("A két egymást követő fejek száma: {}".format(dupla))Tényleg, mit lehet használni egy ilyen vizsgán?
-
EQMontoya
veterán
válasz
szaszayanou #624 üzenetére
Ha jól sejtem, a végén kapsz egy exception-t.
Index <x> is out of bounds.if kiserlet[szamlalo] == "F" and kiserlet[szamlalo+1] == "F":
Itt ugyanis szamlalo+1 simán túlindexel.
További problémák a kóddal, hogy rosszul számolsz.
Mert 'IFFFI' sorozatot beszámítod kétszer, pedig ha jól értem, Neked azok az esetek kellenek, amikor pontosan két fej van egymás mögött.
Új hozzászólás Aktív témák
- Intel Core i7 6700K / GTX 1660TI / 16GB DDR4 RAM / 500 GB SSD konfig eladó
- Samsung Galaxy S23 128GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy A53 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Megkímélt állapotú Xbox Series X 1TB eladó. Kitisztítva és újrapasztázva!
- Gamer PC - i5 13400F, GTX 1080ti és 16gb DDR5
- Azonnali kézbesítés az év bármely pillanatában
- Telefon felvásárlás!! Samsung Galaxy S24/Samsung Galaxy S24+/Samsung Galaxy S24 Ultra
- Bomba ár! HP EliteBook 840 G4 - i5-7GEN I 16GB I 256GB SSD I 14" FHD Touch I Cam I W10 I Garancia!
- Bomba ár! Lenovo ThinkPad Yoga 260 - i5-G6 I 8GB I 256SSD I 12,5" Touch I W10 I Cam I Gari!
- Beszámítás! Apple Mac mini 2023 M2 Pro 16GB 512GB SSD számítógép garanciával, hibátlan működéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest