Ú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
- Luck Dragon: Asszociációs játék. :)
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Linux kezdőknek
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Samsung Galaxy A54 - türelemjáték
- Valami baja van a tápomnak
- 6500 mAh-s aksival debütált a Poco M8 Pro 5G, ez az ára itthon
- Azonnali alaplapos kérdések órája
- World of Tanks - MMO
- Háztartási gépek
- További aktív témák...
- Azonnali készpénzes AMD Radeon RX 9000 sorozat videokártya felvásárlás személyesen/csomagküldéssel
- MÉG OLCSÓBB Thinkpad P52s workstation: Core i7 8650U, 32GB RAM, P500 VGA új kijelző / akkumulátorok
- HP 200W töltők (19.5V 10.3A) kis kék, kerek, 4.5x3.0mm, 928429-002
- LG 32GS95UX - 32" OLED / UHD 4K / 240Hz - 480Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- GYÖNYÖRŰ iPhone 12 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3654
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest


