Új hozzászólás Aktív témák
-
cousin333
addikt
Köszönöm!
Így azért már más a megoldás, hiszen a feladat szerint nem lehet egyszerre beolvasni a teljes fájlt. Ebben az esetben az első 2 példa továbbra is érvényes, a harmadiktól kezdve más megközelítés szükséges. Én összevonnám a feladatokat, hogy a fájlt csak egyszer kelljen megnyitni és iterálni benne. Remélem nem maradt ki semmi, nem futtattam le a kódot:
with open("kiserlet.txt", "r") as f:
fej_db = 0 # Fejek száma
iras_db = 0 # Írások száma
dupla_db = 0 # A pontosan két egymást követő fejek száma
csakfej = 0 # A csak fejekből álló sorozat aktuális hossza
csakfej_max = 0 # A csak fejekből álló sorozat maximális hossza
# A legutóbbi három dobás tárolása
e1, e2, e3 = None, None, None
# Szépen soronként végiglépdelünk a fájlon
for line in f:
line = line.strip('\n')
if line == 'F':
fej_db += 1
# Számolás a 6. feladathoz
csakfej += 1
csakfej_max = max(csakfej_max, csakfej)
if line == 'I':
iras_db += 1
# Számolás a 6. feladathoz
csakfej_max = max(csakfej_max, csakfej)
csakfej = 0
# Számolás az 5. feladathoz
if line == 'I' and e1 == 'F' and e2 == 'F' and e3 == 'I':
dupla_db += 1
# Eltároljuk a legutóbbi dobásokat
e1, e2, e3 = line, e1, e2
# 3. feladat: Az összes dobás száma a fejek és írások összege
ossz_db = fej_db + iras_db
print('A dobások száma: {}'.format(ossz_db))
# 4. feladat
print('A fejek relatív gyakorisága: {:.2%}'.format(fej_db/ossz_db))
# 5.feladat
print('A dupla fejek száma: {}'.format(dupla_db))
# 6. feladat
print('A leghosszabb fej-sorozat: {} dobás'.format(csakfej_max)) -
cousin333
addikt
Az én is olvastam, hogy érettségi feladat. A pszeudokód fogalma is rendben van, csak fura volt a szintaktikája.
Nyilván hűen követni kell a leírást, de azt kérdezte, hogy én hogyan írnám meg

Ha ezt így érettségin elém adnák, valószínűleg a 2. megoldásomat adnám be. Vagy te máshogy írtad volna? -
MasterMark
titán
Köszi. Működik, bár nem teljesen értem.

Viszont mégsem jó valamiért.
Valaki esetleg nem tudja, hogy hogy lehetne szétválasztani reguláris kifejezéssel? Vagyis a számmal kezdődőt rakja az egyikbe, betűvel kezdődőt a másikba, üres sorokat pedig kihagyni. Bár az adódna a másik kettőből azt hiszem.
De ezt sem tudom, hogy lehetne megoldani pythonban...
Új hozzászólás Aktív témák
- Samsung Galaxy S23 Ultra - non plus ultra
- Xiaomi 15 - kicsi telefon nagy energiával
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Milyen autót vegyek?
- AliExpress tapasztalatok
- Kormányok / autós szimulátorok topikja
- Hogy is néznek ki a gépeink?
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Milyen routert?
- További aktív témák...
- 27% - Gamemax GAMER PC! 7500F / RTX 5070 / 32GB DDR5 / 1TB SSD /
- 27% - Erazer P20 GAMER PC! i7-14700F / RTX 4070 / 16GB DDR5 / 1TB NVMe / B760
- LENOVO L13 Yoga 360 touch - 13,3" - i5 10210U, 8GB RAM, SSD, jó akku, - számla, 6 hó gar
- Lenovo ThinkPad L13 Gen 3 13,3" - i5 1235U, 16GB RAM, SSD, jó akku, magyar bill. - számla, 6 hó gar
- Asus Maximus IX Apex (Z270) / Beszámítás OK!
- ÚRIS10!!! RAMÁRON! LEGION 5 i7-13650HX 32GB RAM 1000GB SSD RTX 5070 8GB
- GYÖNYÖRŰ iPhone 14 Pro 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen
- Dell Latitude 7320 i5-1145G7 16GB 256GB 1 év garancia
- BESZÁMÍTÁS! 64GB Patriot Viper 3600Mhz DDR4 memória garanciával hibátlan működéssel
- Huawei Free Clip - Hüvely a füledre, de a füled a hüvelye
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest



