Feladatok

  • Minden feladatot külön notebookba oldj meg!
  • A megoldásnotebook neve tartalmazza a feladat számát!
  • A megoldasok kerüljenek a MEGOLDASOK mappába!
    Csak azok a feladatok kerülnek elbírálásra amelyek a MEGOLDASOK mappában vannak!
  • A megoldás tartalmazza a megoldandó feladat szövegét a megoldás notebook első markdown cellájában!
  • Kommentekkel illetve markdown cellákkal magyarázd hogy éppen mit csinál az adott kódrészlet!
    Magyarázat nélkül beküldött feladatok csak fél feladatnak számítanak!

01-for

Az alábbi három tömbről döntsük el, hogy a Fibonacci-sorozat részét képezik-e ! A tömbök első két eleme garantáltan jó sorrendben részei a Fibonacci sorozatnak!

  • Írjunk egy kód részletet ami for ciklus(ok) segítségével dönti el a vizsgálandó kérdést.
  • Markdown cellába fejtsük tapasztalatainkat szóban is.
    • Melyik lista része a Fibonacchi-sorozatnak ?
    • Ha valamelyik nem része akkor azt is tárgyaljuk hogy miért nem az!

In [ ]:
a=[12586269025, 20365011074, 32951280099, 53316291173, 86267571272, 139583862445, 225851433717,365435296162, 591286729879,
   956722026041, 1548008755920, 2504730781961, 4052739537881, 6557470319842, 10610209857723, 17167680177565, 27777890035288,
 44945570212853, 72723460248141, 117669030460994]

b=[832040, 1346269, 2175309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986]

c=[267914296, 433494437, 701408733, 1134903170, 1836311903, 2971215073, 4807526976,7778742049,
   12586269025, 20365011074, 32951280099, 53316291173, 86267571272]

02-if

Írjunk egy függvényt a nap az ora és fiulany bemeneti valltozók megadott értékei alapján eldönti, hogy épp az adott időben a kérdéses személy mit csinál. A lehetséges tevékenységeket az alábbiak alapján döntsük el:

  • A fiúk is és a lányok is hétköznap délelőtt tanulnak.
  • A lányok délután 2 és 4 között teáznak, egyébként babáznak.
  • A fiúk 12 és 4 között fociznak, 4 től golyóznak.
  • Hétvégén mindenki kirándul. A fiuk a hegyekbe, a lányok a tengerhez mennek szombaton, de vasárnap fordítva.
  • Mindennap mindenki 8-kor megy aludni, és reggel 8 kor kel.

a függvény egy karakterláncal térjen vissza melynek az értékei a fenti kritérium rendszer alapján alábbiak lehetnek: 'tanul','teázik','babázik','focizik','golyózik','tengernél kirándul','hegyekben kirándul','alszik'

a három bemenő változó lehetséges értékei pedig az alábbiak lehetnek:

  • nap : 'hétfő','kedd','szerda','csütörtök','péntek','szombat','vasárnap'
  • ora : egy egész szám 0 és 24 között
  • fiulany: 'fiú','lány'

In [ ]:
def kiholmit(nap,ora,fiulany):
    "..." # ide jön a docstring
    #
    # ide jön a varázslat..
    #
    return # ide jön a visszatérési érték

03-Mértani sorozat

Írjunk egy függvényt, amely egy kezdőértékből, egy kvóciensből és egy N egész számból legyárt egy N hoszú mértani sorozatot.

  • Írjunk docstringet!
  • a függvény egy listával térjen vissza !

In [ ]:
def mertani(x0,q,N):
    "..." # ide jön a docstring
    #
    # ide jön a varázslat..
    #

04-Telefon központ

Írjunk egy függvényt, ami neveket és telefonszámokat tartalmazó szótárakat dolgoz fel!

  • Két bemenő paramétert használjunk. Az első egy szám, a második pedig egy szótár (dict).
  • A függvény írja ki azoknak az embereknek a nevét, akik abban a körzetben laknak, amelynek az előhívó számát megadjuk (az első három számjegy)!
  • A függvény visszatérési értéke legyen az hogy hány ember lakik az adott körzetben. Itt egy példaadatbázis:

In [ ]:
adatok={'Alonzo Hinton': '(855) 278-2590',
 'Cleo Hennings': '(844) 832-0585',
 'Daine Ventura': '(833) 832-5081',
 'Esther Leeson': '(855) 485-0624',
 'Gene Connell': '(811) 973-2926',
 'Lashaun Bottorff': '(822) 687-1735',
 'Marx Hermann': '(844) 164-8116',
 'Nicky Duprey': '(811) 032-6328',
 'Piper Subia': '(844) 373-4228',
 'Zackary Palomares': '(822) 647-3686'}

In [ ]:
def telefon_kozpont(korzet,adatok):
    "Ha megadod a körzetszámot (korzet) akkor kiírom ki lakik ott."
    #
    #ide jön a varázslat...
    #
    return # ide jön a visszatérési érték

05-Változó számú argumentumok-I

A harmadik példában megírt mértani sorozat függvényt módosítsuk úgy, hogy:

  • ha egy bemeneti értéke van, akkor azt tekintse kezdőértéknek, a kvóciens legyen 0.5, N pedig 10.
  • ha két bemeneti érték van, akkor az első legyen a kezdőérték, a második a kvociens, N pedig 10
  • ha megvan mind a három paraméter, akkor ugyanúgy viselkedjen, mint ahogy azt az előző feladatban tette.

06-Változó számú argumentumok-II ☠

Írjunk egy függvényt, amelyik egy tetszőleges fokszámú polinomot értékel ki egy adott x helyen! A polinom fokszámát és együtthatóit határozzuk meg az a változó hosszúságú argumentumból! Használjuk a listákra alkalmazható len() függvényt!


In [ ]:
def poly(x,*a):
    "Polinom függvény f(x)=\sum_i a_i x^i" #Ez csak a docstring
    #
    # ide jön a varázslat..
    #
    return # ide jön a visszatérési érték

07-kulcsszavas függvény változó számú argumentummal ☠

Írjunk egy függvényt, amely egy adott x valós értékre kiértékel egy tetszőleges polinomfüggvényt, vagy annak a reciprokát! A polinom-együtthatókat egy tetszőleges hosszúságú args nevű listában kapjuk. Ha a függvény kap egy harmadik argumentumot kulcsszavas lista formájában, akkor vizsgáljuk meg, hogy abban a 'fajta' kulcsszó mit tartalmaz. Ha a kulcsszó 'reciprok', akkor a polinom reciprokát számoljuk! Ellenkező esetben a polinom értékét adjuk vissza!


In [ ]:
def fuggveny(x,*args,**kwargs):
    "Ha a kwargs nem rendelkezik másképp akkor kiértékelek egy polinomot"
    #
    #ide jön a varázslat
    #
    if kwargs['fajta']=='inverz':
        #
        #
    else:
        #
        #
    
    #
    return #ide jön a visszatérési érték..