Informatika1-2011/Gyakorlat2

A MathWikiből
(Változatok közti eltérés)
(Listák kezelése)
a
 
42. sor: 42. sor:
  
 
Írj Sage függvényt, amely ''x''-et kap bemenetként, és sorban kiírja a lépéseket 1-ig!
 
Írj Sage függvényt, amely ''x''-et kap bemenetként, és sorban kiírja a lépéseket 1-ig!
 
  
 
=== Szótárak kezelése ===
 
=== Szótárak kezelése ===

A lap jelenlegi, 2011. szeptember 21., 11:47-kori változata

Tartalomjegyzék

Vezérlési szerkezetek (if, for, while)

  1. Definiálj egy Sage függvényt elojel néven, amelynek egy bemenete van (a), és a "pozitiv" karakterláncot (vagyis stringet) írja ki ha a kapott paraméter pozitív, "negativ"-at ad vissza ha a szám negatív, és "nulla"-ta ad ha nulla volt a paraméter értéke.
  2. Írj egy Sage függvényt primek_szama néven, amely bemenetként kap egy számot (n) és visszaadja az n-nél kisebb prímek darabszámát!
  3. Írj egy függvényt elso_primek néven, amely bemenetként kap egy számot (n) és kiírja az első n prímszámot!

Lista és tuple alapok

  1. Adj meg egy legalább 5 elemű, egész számokat tartalmazó listát, és rendeld az L változóhoz!
  2. Írasd ki a lista második elemét!
  3. Írasd ki a lista második, harmadik, és negyedik eleméből álló részlistát (használd a kettőspontot a szögletes zárójelen belül)!
  4. Írasd ki a lista első 3 elemét!
  5. Írasd ki a lista utolsó elemét (negatív index)!
  6. Fűzz a lista végére egy új elemet, értéke legyen ugyanaz, mint az első elem! (append())
  7. Keresd meg hogy egy elem hányadik indexen szerepel a listádban! (index())
  8. Számold meg, hányszor szerepel az első elem a listában! (count())
  9. Mennyi a listádban szereplő számok összege? (sum())
  10. Rendezd a listádat növekvő sorrendbe! (sort())
  11. Fűzd össze az L listát az [1,2,3] listával! (használd a + operátort)
  12. Készíts listát (A néven) az "abrakadabra" stringből! (list())
  13. Készíts stringet az A listából! (str())
  14. Készíts tuple-t T néven az A listából, majd írd ki az utolsó elemét!
  15. Változtasd meg a T első elemét!

Listák kezelése

  1. Írj függvényt sokszorozo néven, amely bemenetként kap egy számot (n) és még egy paramétert, a-t (ennek a típusa bármi lehet). A függvény adjon vissza egy listát, amiben n-szer szerepel az a értéke.
    Például: sokszorozo(3, "bla") kimenete ["bla", "bla", "bla"] legyen.
  2. Írj függvényt reszlista néven, amely bemenetként kap egy listát, és a függvény kimenete az a részlistája legyen az eredetinek, amely a két első 0 közötti elemekből áll. Ha nincs a bemeneti listában legalább 2 nulla, akkor legyen a kimenet az üres lista.
    Például reszlista(1, 4, 0, 3, 5, 6, 3, 0, 23, 5, 0, 1, 0, 4) eredménye legyen [3, 5, 6, 3]
  3. Írj Sage függvényt amely megfordít egy bemenetként kapott listát!

Vegyes feladatok

Tökéletes számok

  • Írj függvényt, amely egy a számról eldönti, hogy az tökéletes szám-e (megegyezik a nála kisebb osztóinak az összegével, pl: 6, 28).
  • Írj függvényt, amely 1-től n-ig összegyűjti és egy listában visszaadja a talált tökéletes számokat!

A 3n+1 probléma

A híres 3x+1 probléma (Collatz-sejtés) : végy egy számot, ha páratlan, szorozd meg 3-mal és adj hozzá 1-et, ha páros, oszd el 2-vel. Az az állítás, hogy így bármilyen pozitív egész számból indulva előbb-utóbb eljutunk 1-ig.

Írj Sage függvényt, amely x-et kap bemenetként, és sorban kiírja a lépéseket 1-ig!

Szótárak kezelése

Legyen egy gyumolcs_arak nevű szótárunk, a következő kulcs-érték párokkal:
'alma': 150
'szilva': 190
'ananász': 450
'banán': 300

És legyen egy másik, vasarlas nevű szótár, amely azt tárolja, miből mennyit vettünk:
'banán': 0.6
'alma': 1.5
'ananász': 2

Írj Sage függvényt (legyen a neve ar_szamolo), amely megkapja a fenti két szótárat (első paramétere legyen az árakat tartalmazó), és kiszámolja, hogy mennyit kell fizetnünk a gyümölcsökért!

Személyes eszközök