Informatika2-2022/CsütGyak05

A MathWikiből
(Változatok közti eltérés)
(Sztring)
(Fájl beolvasás)
66. sor: 66. sor:
  
 
==Fájl beolvasás ==
 
==Fájl beolvasás ==
 +
 +
===Szétszedés===
 +
 +
Írjuk meg a szétszed() függvényt, aminek a bemenete egy string és a stringet egy listába szedi úgy, hogy a szóközzel elválasztott szavak külön elemként szerepeljenek a listában.<br>
 +
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.
  
 
===Szóismétlés===
 
===Szóismétlés===

A lap 2022. március 16., 12:16-kori változata

Tartalomjegyzék

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]]

Á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.

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, aminek a bemenete egy string és a stringet egy listába szedi úgy, hogy a szóközzel elválasztott szavak külön elemként 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.

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.

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 'de' vagy 'hogy' előtti szót olyanra, hogy a végén legyen ','.
A szöveges fájlunk például: 'Minden ember tudta hogy érdemes lenne felszólalnia de ez sokszor nem ilyen egyszerű.' Kimenet: 'Minden ember tudta, hogy érdemes lenne felszólalnia, de ez sokszor nem ilyen egyszerű.'

Személyes eszközök