Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MrBlaise/7022751 to your computer and use it in GitHub Desktop.
Save MrBlaise/7022751 to your computer and use it in GitHub Desktop.
Emelt informatika érettségi 2005 május - Lottó / Solution for Advanced Computer Science Matura 2005 may (Hungary)
#!/usr/bin/env python3
# Rostás Balázs - Emelt informatika érettségi 2005 május - Lottó
# Fájl beolvasás függvénnyel: (Végül egyszer van csak felhasználva a függvény, de gyakorlásképp oldottam meg így)
def fajlBe(fajl):
fajlBe = open(fajl, "r")
lottoSzamLista = []
for sor in fajlBe:
lottoSzamLista.append(sor.split())
lottoSzamLista = [[int(szam) for szam in het] for het in lottoSzamLista]
fajlBe.close()
return lottoSzamLista
# 1-2. feladat ______________________________________________________:
lottoSzam = []
print("Kérem adja meg a hiányzó 52. hét lottószámait:\n")
for i in range(5):
lottoSzam.append(int(input("Kérem adja meg az "+str(i+1)+". számot: ")))
lottoSzam.sort()
print("\nA megadott számok:", lottoSzam)
# 3-4. feladat ______________________________________________________:
lottoSzamLista = fajlBe("lottosz.dat")
bekerSzam = int(input("\nAdjon meg egy számot 1-51 között: "))
print(lottoSzamLista[bekerSzam-1])
# 5. feladat ________________________________________________________:
szamEgyszerSe = False
for lottoszam in range(1, 91):
for het in range(51):
if lottoszam in lottoSzamLista[het]:
szamEgyszerSe = False
break
else:
szamEgyszerSe = True
if szamEgyszerSe:
break
if szamEgyszerSe:
print("\nVan olyan szám amit egyszer sem húztak ki az 51 hét alatt!")
else:
print("\nNincs olyan szám amit egyszer sem húztak ki az 51 hét alatt!")
# 6. feladat ________________________________________________________:
paratlan = 0
for het in lottoSzamLista:
for szam in het:
if szam%2 == 1:
paratlan += 1
print("\n",paratlan," db páratlan szám került kihúzásra.\n", sep="")
# 7. feladat ________________________________________________________:
ujFajl = open("lotto52.ki","w")
lottoSzamString = [[str(szam) for szam in het] for het in lottoSzamLista]
for het in lottoSzamString:
ujFajl.write(" ".join(het)+"\n")
ujFajl.write(" ".join(str(szam) for szam in lottoSzam))
ujFajl.close()
# 8. feladat ________________________________________________________:
ujFajl = fajlBe("lotto52.ki")
kihuzas = []
for szam in range(1,91):
dbSzam = 0
for het in ujFajl:
if szam in het:
dbSzam += 1
kihuzas.append(dbSzam)
kihuzasMasolat = [str(szam) for szam in kihuzas]
print("Egyes számok gyakorisága:")
for sor in range(6):
print(" ".join(kihuzasMasolat[:15]))
kihuzasMasolat = kihuzasMasolat[15:]
# 9. feladat ________________________________________________________:
print()
primSzamok = []
for num in range(2,91):
if all(num%i!=0 for i in range(2,num)):
primSzamok.append(num)
primVolt = True
print("A nem kihuzott prímszám(ok): ", end="")
for lottoszam in primSzamok:
for het in range(52):
if lottoszam not in ujFajl[het]:
primVolt = False
else:
primVolt = True
break
if not primVolt:
print(lottoszam, end=" ")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment