Informatics2-2018/Lab03

A MathWikiből
A lap korábbi változatát látod, amilyen Gaebor (vitalap | szerkesztései) 2018. február 28., 18:13-kor történt szerkesztése után volt.

previous up next

Tartalomjegyzék

Exercises

Mean nearest

Write a function that finds an element in a list which is the nearest to the mean of the list. There should be one parameter, the list.

Increasing sublists

Write a function that finds increasing sublists with a given length within a given list. The function should have two parameters:

  • a list l
  • and a natural number n
  • return the list of n-long increasing sublists of l

Break down to subtasks:

  • first return the list of all n-long sublists of l
  • Check whether a sublist is increasing

Name conflict

We are throwing a party and there are a lots of unknown people there. We write their names in a list. Write a python function that decides whether there is a duplicate in the names (two person with the same name).

The function should have one parameter: the list of names.

Return True if there are at least two people with the same name, </tt>False</tt> is all the names are unique.

Hint:

Mind that do not compare ones name to itself, only to other's names.

Pronunciation

In Hungarian there are a lots of vowels and some words are hard to pronounce if there are a lots of consonants in them. For example "elorozza" has a good number of vowels, but the Slovakian "zmrzlina" has too many consonants.

Write a python function that decides whether a word has too many consonants or not.

  • Call the function pronunciation
  • with one parameter: word, the word in question
  • return the string "Hard" if the number of consonants are more (or equal) than twice the number of vowels.
  • return "Easy" otherwise.

Food courses

Suppose you have a really strict diet and you have a given number of calories what you should eat for dinner. You walk in a restaurant and they have the menu of soups and main dishes. Every item on the menu has a calorie value.

Can you choose the right dishes to exactly match your calorie intake?

Write a python function

  • called dishes
  • that have three parameters:
    • calorie, the number of calories you should eat
    • soups, a list containing calorie values for the soups
    • mains, a list containing calorie values for the main dishes
  • You should return True if there is a two-course meal that fits your diet (True otherwise).

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 az, hogy az n. sor k. eleme az az "n alatt a k" binomiális együttható, és minden elem a felette levő kettő összege. Í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!

Cserebere

A bemenetünk egyrészt egy szó a szo nevű változóban, másrészt cserék egy sorozata, amit végre kell hajtani a szón, a cserek nevű változóban. Így szo egy karakterlánc, cserek pedig egy lista, melynek minden eleme egy pár, ami a csere helyét, és az új betűt tartalmazza.

Ezeket a cseréket kell elvégezni a szo-n és az így kapott sztringet visszaadni.

Név generá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 sokszor 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.


previous up next

Személyes eszközök