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/7022859 to your computer and use it in GitHub Desktop.
Save MrBlaise/7022859 to your computer and use it in GitHub Desktop.
Emelt informatika érettségi 2012 október - Színkép / Solution for Advanced Computer Science Matura 2012 october (Hungary)
#!/usr/bin/env python3
# Rostás Balázs - Emelt informatika érettségi 2012 október - Színkép
# 1. feladat
kepFajl = open("kep.txt", "r")
kepAdat = [ sor.strip("\n").split(" ") for sor in kepFajl ]
kepAdat = [ [ int(szam) for szam in lista ] for lista in kepAdat ]
kepAdat = [ kepAdat[index:index+50] for index in range(0, len(kepAdat), 50) ]
kepFajl.close()
print("1. feladat - kep.txt beolvasása - KÉSZ!\n")
# 2. feladat
print("2. feladat:\n")
szamBeker = [ int(elem) for elem in input("Kérem adjon meg egy RGB kódot R G B formátumban: ").split(" ")]
laposKepAdat = [elem for allista in kepAdat for elem in allista]
print("Van" if tuple(szamBeker) in set(tuple(kod) for kod in laposKepAdat) else "Nincs", "ilyen szín a képen.")
"""
if szamBeker in laposKepAdat:
print("A megadott szín megtalálható a képen!")
else:
print("A megadott szín nem található meg a képen!")
"""
# 3. feladat
print("\n3. feladat:\n")
print("Sorban:", kepAdat[34].count(kepAdat[34][7]), "Oszlopban:", [sor[7] for sor in kepAdat].count(kepAdat[34][7]))
"""
keresettKod = kepAdat[34][7]
sorSzamlalo = 0
for elem in kepAdat[34]:
if keresettKod == elem:
sorSzamlalo += 1
print("Sorban:", sorSzamlalo, end=" ")
oszlopSzamlalo = 0
for sor in kepAdat:
if keresettKod == sor[7]:
oszlopSzamlalo += 1
print("Oszlopban:", oszlopSzamlalo)
"""
# 4. feladat
print("\n4. feladat:\n")
szinkod = {(255,0,0) : "Vörös.", (0,255,0) : "Zöld.", (0,0,255) : "Kék."}
print("A leggyakoribb szín a három (Vörös, Kék, Zöld) közül a",\
max([ [szinkod[kulcs], laposKepAdat.count(list(kulcs))] for kulcs in szinkod.keys() ], key=lambda x: x[1])[0])
'''
szinSzamlalo = 0
for szin in laposKepAdat:
if szin == [255, 0, 0]:
szinSzamlalo += 1
vorosSzam = szinSzamlalo
szinSzamlalo = 0
for szin in laposKepAdat:
if szin == [0, 255, 0]:
szinSzamlalo += 1
zoldSzam = szinSzamlalo
szinSzamlalo = 0
for szin in laposKepAdat:
if szin == [0, 0, 255]:
szinSzamlalo += 1
kekSzam = szinSzamlalo
szinSzamlalo = 0
if max(vorosSzam, zoldSzam, kekSzam) == kekSzam:
print("Kék", end=" ")
elif max(vorosSzam, zoldSzam, kekSzam) == zoldSzam:
print("Zöld", end=" ")
else:
print("Vörös", end=" ")
print("színből van a legtöbb.")
'''
# 5. feladat
print("\n5.feladat - 3 képpontos keret hozzáadása a képhez - KÉSZ!\n")
for y in range(len(kepAdat)):
for x in range(len(kepAdat[y])):
if (x<=2) or (x>= len(kepAdat)-3) or (y<=3) or (y>= len(kepAdat)-3):
kepAdat[y][x] = [0,0,0]
# 6. feladat
print("6.feladat - keretes.txt létrehozása - KÉSZ!")
keretesFajl = open("keretes.txt", "w")
laposKepAdat = [elem for allista in kepAdat for elem in allista]
for kod in laposKepAdat:
print(' '.join(map(str,kod)), file=keretesFajl)
keretesFajl.close()
'''
for kod in laposKepAdat:
for szam in kod:
keretesFajl.write(str(szam)+" ")
keretesFajl.write("\n")
keretesFajl.close()
'''
# 7. feladat
print("\n7. feladat:\n")
balFelso = None
keppont = 0
for y in range(len(kepAdat)):
for x in range(len(kepAdat[y])):
if kepAdat[y][x] == [255,255,0]:
keppont += 1
if balFelso == None:
balFelso = [x,y]
jobbAlso = [x,y]
print("Kezd: ", balFelso[0]+1, ", ", balFelso[1]+1, sep="")
print("Kezd: ", jobbAlso[0]+1, ", ", jobbAlso[1]+1, sep="")
print("Képpontok száma:", keppont)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment