Feladat
Valósítsa meg az alábbi feladatot a tanult programozási nyelven:
Forrásfájlok:
A feladat megoldására ajánlott időkeret:
40 perc
Ahhoz, hogy Ön ellenőrizni tudja munkaidejét, használhatja az itt található stoppert.
Az órát
Önnek kell elindítania, az idő számolását pedig szükség esetén bármikor
szüneteltetheti. Az óra 40 perc után sem fog megállni -
addig számol,
amíg Ön le nem állítja. Viszont az idő 3/4 részének elteltekor diszkrét
figyelmeztető hangjelzést fog adni, majd pedig az időkeret lejártával csipogni fog.
A
hangokat az alábbi hangszóró ikonokra kattintva előzetesen ki is próbálhatja.
Figyelmeztető hang 30 perc után
Csipogó hang az időkeret végén
Amennyiben nem szeretne hangjelzéseket hallani, akkor ezt
kikapcsolhatja a stopperen.
Eddig 8 hozzászólás van a témához:
2019-03-21 10:36
Vajk
Helló!
Lehet, hogy csak béna vagyok és nem találom, de hiányoznak az állományok.
Üdv,
Vajk
2019-03-24 13:40
Admin
Hello Vajk!
Valószíbnűleg nem vagy béna :) Sajnos az NSZFH, mint a feladat kiírója nem tett közzé forrásfájlt a feladathoz, ezért nincs az oldalon sem kint jelenleg. A probléma megoldását az jelentheti, ha valaki legyárt hozzá mások számára is használható forrásfájlokat, és eljuttatja hozzám. Ha érkezik ilyen, örömmel megosztom.
2019-04-13 10:11
Admin
Korábbi kiírásom eredményeként kaptam a feladathoz forrásfájlokat, így mostantól azok is elérhetőek, használhatóak.
Nagyon szépen köszönöm a fájlokat Krisztiánnak!
2019-05-11 16:12
gbbon
Szerintem ezek a forras fileok sem jok, hiszen a minta kepen olyan IP-k vannak kiosztva amik ezekben a forras fileokban nem kioszthatokent szerepelnek es nem is szabadulnak fel release-val.
2019-05-13 17:27
Admin
gbbon, ez lehetséges - de a feladatok már elvégezhetőek velük ;)
2021-02-18 22:31
Józsi
Kemény egy feladat. Ez viszont nem elismerés a kitalálója felé, hanem kritika. Aki hálózatokkal foglalkozott már behatóbban az azonnal észre veszi, hogy logikátlan a folyamatábra. Bennem az fogalmazódott meg, hogy a kitalálója vagy szívatni akarta a vizsgázókat vagy a saját logikája mentén képzelte el a DHCP szerver működését. A leírás is elég suta. Szomorú...
Egyébként a feladat megoldható, köszönet annak, aki megcsinálta a forrásokat.
2022-01-09 23:42
ztibor
#Megoldás Pythonban
class MacIP:
def __init__(self,sor):
s=sor.strip().split(';')
self.MAC=s[0]
self.IP=s[1]
class Test:
def __init__(self,sor):
s=sor.strip().split(';')
self.tipus=s[0]
self.cim=s[1]
def Req(maddr):
if maddr in dberelt.keys():
return 0
else:
if maddr in dreserv.keys():
kiIP=dreserv[maddr]
if kiIP in dberelt.values():
return -1
else:
i=100
while i< 199:
kiIP = '192.168.10.' + str(i)
if kiIP in dberelt.values():
i+=1
elif kiIP in lexcl:
i+=1
elif kiIP in dreserv.values():
i+=1
else:
break
if i>=199:
return -2
dberelt[maddr]=kiIP
return 1
def Rel(ip):
i=0
it=[(k,v) for k,v in dberelt.items() if v==ip]
if len(it)!=0:
dberelt.pop(it[0][0])
return 1
else:
return -1
#1. feladat
lexcl=set()
f=open('excluded.csv')
for k in f.readlines():
lexcl.add(k)
f.close()
dreserv={}
f=open('reserved.csv')
for k in f.readlines():
ob=MacIP(k)
dreserv[ob.MAC]=ob.IP
f.close()
dberelt={}
f=open('dhcp.csv')
for k in f.readlines():
ob=MacIP(k)
dberelt[ob.MAC]=ob.IP
f.close()
ltest=[]
f=open('test.csv')
for k in f.readlines():
ltest.append(Test(k))
f.close()
#2. feladat
for k in ltest:
if k.tipus=='request':
Req(k.cim)
else:
Rel(k.cim)
#3. feladat
ki=[]
for k in dberelt.keys():
ki.append(k+';'+dberelt[k]+'
')
f=open('dhcp_kesz.csv','w')
f.writelines(ki)
f.close()