FANDOM


Check Tesztelve a 3.4.3 verzióban.

# -*- coding: utf-8 -*-
# 2015. május 12., Expedíció feladat

# 1. feladat
#Ekkoránál elmegy a readlines, kritika itt: http://stupidpythonideas.blogspot.hu/2013/06/readlines-considered-silly.html
# sorok = open('veetel.txt').readlines() is megtenné, de egyből kivesszük az entereket is.
sorok = []
for sor in open('veetel.txt').readlines():
    sorok.append(sor.replace('\n',''))

#Hogy megkönnyítsük az életünket (0 - N-1):
N = len(sorok) // 2
def nap(i):
    return sorok[2*i].split(' ')[0]

def amator(i):
    return sorok[2*i].split(' ')[1]

def uzenet(i):
    return sorok[2*i+1]

# 2. feladat
print('\n2. feladat')
print('Az első üzenet rögzítője: %s' % sorok[0].split(' ')[1])
print('Az utolsó üzenet rögzítője: %s' % sorok[-2].split(' ')[1])

# 3. feladat
print('\n3. feladat')
for i in range(N):
    if 'farkas' in uzenet(i):
        print('%s. nap %s. amatőr' % (nap(i), amator(i))) # Szándékos helyesírási hiba, a minta vessző nélkül kéri


# 4. feladat
print('\n4. feladat')
# Ez egy klasszikus összegzési tétel lesz, ami iskolásoknak is érthető:
feljegyzesek = [0] * 12
for i in range(N):
    feljegyzesek[int(nap(i))] += 1
    feljegyzesek[0] +=1 # Önellenőrzés
for i in range(1, 12):
    print('%d. nap: %d rádióamatőr' % (i, feljegyzesek[i]))
# print(feljegyzesek[0]) # Miután kijött a 153, a vizsgázó megnyugodhat, és kiveheti ezt a sort, ami nem a megoldás része.


# 5. feladat
f = open('adaas.txt', 'w')
for day in range(1, 12):
    # Kénytelenek leszünk listát használni, mert a string megváltoztathatatlan.
    message = ['$'] * 90 # Így elég kiszállni az első $ jelnél
    lista = [] # Először kigyűjtöm a vett üzeneteket a kényelem kedvéért.
    for i in range(N):
        if int(nap(i)) == day:
            lista.append(uzenet(i))
    u = len(lista)
    for j in range(90):
        chars = ''.join([lista[i][j] for i in range(u)])
        cc = chars.replace('#', '')
        if '$' in chars:
            break
        elif len(cc) > 0:
            message[j] = cc[0]
        else:
            message[j] = '#'
    f.write(''.join(message) + '\n') # Itt alakul vissza a lista stringgé.
f.close()


# 6. feladat, 1. megoldás: a megadott útmutató szerint
def szame(szo):
    valasz = True
    for i in range(len(szo)):
        if szo[i] < '0' or szo[i] > '9':
            valasz = False
    return valasz
#6. feladat, 2. megoldás: így csinálnám Pythonban, ha szabad kezem lenne
def szame2(szo):
    return True if szo.isdigit() else False

#7. feladat
print('\n7. feladat')
nap7 = int(input('Adja meg a nap sorszámát! '))
amat7 = int(input('Adja meg a rádióamatőr sorszámát! '))
#A klasszikus keresési tétel kissé pythonosítva:
van = False
for i in range(N):
    if int(nap(i)) == nap7 and int(amator(i)) == amat7:
        van = True
        break
if not van:
    print('Nincs ilyen feljegyzés')
else:
    eleje = uzenet(i).split(' ', 1)[0]
    egyedek = eleje.split('/')
    # Itt igazából try-except kéne, de a feladat szerinti bemenő adatokkal anélkül is jó.
    if szame(egyedek[0]) and szame(egyedek[1]):
        print('A megfigyelt egyedek száma: %d' % (int(egyedek[0]) + int(egyedek[1])))
    else:
        print('Nincs információ')

Ez a szócikk forráskódot tartalmaz, amely egy WikiMedia-kiegészítés segítségével olyan színesen jeleníthető meg, mint például ebben a Wikipédia-cikkben. A kiegészítést a Wikia-stáb ígérete szerint 2010 végéig frissítik, addig türelmet kérünk a fapados kinézet miatt.

Érettségi feladatok programozásból
2004 Személyazonosító jel

2005 LottóVigenère-tábla 2006 TelefonszámlaFehérjeZenei adók 2007 SMS-szavakFoci 2008 SMSRobot 2009 LiftAutomataÚtépítés 2010 HelyjegyTelekAnagramma 2011 SzójátékRejtvényPitypang 2012 FutárTörtekSzín-kép 2013 VálasztásokSzámokKözúti ellenőrzés 2014 IPv6CéllövészetNézőtér 2015 ExpedícióLatin táncokFej vagy írás 2016 ÖtszázZárTelefonos ügyfélszolgálat 2017 TesztversenyFürdő

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

A Wikia-hálózat

Véletlen wiki