Informatika2-2022/CsütGyak05

A MathWikiből

Tartalomjegyzék

Átlaghoz legközelebbi

Írjunk függvényt, mely a kapott valós számokat tartalmazó listában megkeresi a lista elemeinek átlagához legközelebbi számot, és ezzel tér vissza.
Tipp: Használjuk az abszolútérték meghatározására az abs() függvényt.
Üres lista esetén adjon vissza None-t.

Azonos elemek

Definiáljuk az azonos() függvényt, aminek a bemenete egy lista, és olyan listák listájával tér vissza, amelyek az eredeti lista egymás után következő azonos elemeit tartalmazzák.
Például:

  azonos([1,2,2,3,3,3,3,4,2,2])
  [[1],[2,2],[3,3,3,3],[4],[2,2]]


Nehezebbek

Szavak

1.

Definiáljuk a kiejtés() függvényt, aminek bemenete egy sztring és a program térjen vissza True-val, ha ugyanannyi magánhangzó van benne, mint mássalhangzó, egyébként pedig False-szal. Az egyszerűsítés kedvéért használhatjuk az angol abc-t.

2.

Írjuk meg a nehéz() függvényt, ami egy sztringről eldönti, hogy nehéz szónak számít-e a sztring. A függvény térjen vissza True-val ha két magássalhangzó egymás után következik benne és térjen vissza False-szal egyébként. Az egyszerűsítés kedvéért használhatjuk az angol abc-t.

Pascal

A Pascal-háromszög a binomiális együtthatók háromszög formában való elrendezése. Részletes leírás található pl. a magyar wikipédián. A lényeg, hogy minden elem a felette levő kettő összege és a legelső sorban csak egy 1-es van és úgy tekintjük, hogy a sor többi eleme mind nulla, ami nincs kiírva. Írjuk meg a pascal nevű függvényt, ami visszaadja a Pascal-háromszög első néhány sorát listák listájaként. A függvény paramétere:

  • n, hogy hány sort számoljunk ki

Így tehát pl. pascal(4)-nek a következőt kell visszaadnia:

   [[1],
   [1, 1],
   [1, 2, 1],
   [1, 3, 3, 1]]

Az elemek kiszámolásához ne a binomiális együttható általános (faktoriálisos) képletét használjuk, hanem azt, hogy a felette levő két elem összege!

Névgenerátor

Egy olyan számítógépes játékon dolgozunk, amiben rendszeresen találkozunk más, a számítógép által megszemélyesített, karakterekkel. Ezeknek a karaktereknek számítógép véletlenszerűen választ nevet, azonban szeretnénk elkerülni hogy ugyanazt a nevet többször lássa a játékos Ezért ahelyett hogy egy listányi nevet megadtunk volna a játék készítésekor, inkább külön-külön egy listányi előtagot és utótagot adtunk meg, hogy ezekből rakja össze a karakterek neveit.

Írjuk meg a függvényt, ami az összes lehetséges nevet összerakja az adott elő és utótagok listája alapján.

  • A függvény neve legyen nev_generator, és két paramétere legyen
  • elotagok, egy lista, amiben az előtagok szerepelnek karakterláncokként
  • utotagok, egy lista, amiben az utótagok vannak hasonlóan.
  • A adja vissza az összes lehetséges összerakott nevet egy listában.

Próbáljuk a feladatot listagenerálással is megoldani!

Input

Átlag

Írjon egy proramot, ami szóközökkel elválasztott számokat kér, és kiírja az átlagukat. Tehát a program egy futása ehhez hasonlóan nézhet ki:

  Üssön be néhány számot szóközökkel elválasztva: 1 4 13 2
  Az átlag 5.0

Sztring

Írjunk egy programot, ami inputnak egy sztringet és egy i természetes számot kér és visszatér a sztring i-edik karakterével.

Fájl beolvasás

Szétszedés

Írjuk meg a szétszed() függvényt, ami a bemeneteként adott string szavainak listáját adja vissza; szónak olyan résztring számít, amit szóközök határolnak, szerepeljenek a listában.
Megjegyzés: Erre van egy beépített függvény, amit egy s string esetén az s.split() paranccsal lehet meghívni. A további feladatokban ennek fontos szerepe lesz.

Használjuk a következő txt fájlt a feladatokban https://drive.google.com/file/d/1o5Bp6xTLUNGqhRsMflFm_7dbgcF8fEK_/view?usp=sharing

Szóismétlés

Írjunk egy programot, aminek két bemenete van. Az első bemenete egy szöveges fájl, amit beolvasunk. A szöveges fájlban számolja össze, hogy a második paraméternek megadott sztring hányszor szerepel a fájlban. Egy szó szereplése azt jelenti, hogy két szóköz között pontosan azon szó egészét tartalmazza.

Betűcsere

Írjunk egy függvényt, aminek 3 paramétere van. Az első egy szöveges fájl neve, amit szeretnénk beolvasni. A beolvasott szöveg minden második paraméterű sztring karakterét cseréljük ki a harmadik paraméterre és ezt printeljük ki.
Például: A fájlunk a nihilizmus.txt és térjünk vissza azzal, hogy minden 'a' betűt 'b'-re cserélünk.


Vesszőzés

Írjunk egy olyan programot, ami inputnak bekéri a szöveges fájl nevét és a beolvasása után módosítson minden 'which' vagy 'the' mögötti szót olyanra, hogy a végén legyen ','.
A szöveges fájlunk például: The etymological origin of nihilism is the Latin root word nihil, meaning 'nothing' which is similarly found in the related terms annihilate, meaning 'to bring to nothing', and nihility, meaning 'nothingness'. Kimenet: The etymological origin of nihilism is, the Latin root word nihil, meaning 'nothing', which is similarly found in, the related terms annihilate, meaning 'to bring to nothing', and nihility, meaning 'nothingness'.

Személyes eszközök