Zadání úloh z programování
Implementovat úlohy můžete do této šablony. Testy pro ověření správnosti implementace jsou k dispozici zde.
Soubor se šablonou a soubor s testy mějte při spuštění testů ve stejné složce.
Na implementaci máte 90 minut. Implementovat máte 6 úloh. Od druhé správně vyřešené úlohy je každá bodovaná jedním bodem.
Funkce musí fungovat pro libovolná zadání, projití testy je pouze orientační pro hodnocení úspěšnosti.
Úloha 1: Hledání maximální hodnoty ze tří čísel
int: getMax(a,b,c)
Tato funkce vrací hodnotu maximálního čísla ze tří čísel pojmenovaných a, b, c.Uživatelské vstupy:
- a: int - Libovolné číslo, u kterého se má ověřit, zda je maximální
- b: int - Libovolné číslo, u kterého se má ověřit, zda je maximální
- c: int - Libovolné číslo, u kterého se má ověřit, zda je maximální
Návratová hodnota:
- maxValue: int - Hodnota největšího ze tří čísel
Úloha 2: Ciferný součet
int: digitSum(a)
Tato funkce vrací ciferný součet čísla v proměnné a.
Uživatelské vstupy:
- a: int - Libovolné číslo, u kterého se má zjistit jeho ciferný součet
Návratová hodnota:
- sum: int - Ciferný součet čísla
Úloha 3: Počet záporných čísel ze seznamu
int: countOfNegativeNumbers(list)
Tato funkce vrací počet záporných čísel ze seznamu s názvem list.
Uživatelské vstupy:
- list: list - Libovolně dlouhý seznam prvků datového typu int (libovolně velký seznam čísel)
Návratová hodnota:
- negativeNumbers: int - Počet záporných čísel v poli
str: translator(text)
Tato funkce vrací přeložený text podle speciálně definované abecedy.
Uživatelské vstupy:
- text: str - Libovolně dlouhý textový řetězec
Návratová hodnota:
- translation: str - Překlad vstupního textu podle abecedy
Abeceda:
Výsledná abeceda |
Povolené znaky v proměnné text |
65 |
A |
66 |
B |
67 |
C |
68 |
D |
69 |
E |
70 |
F |
71 |
G |
72 |
H |
73 |
I |
74 |
J |
75 |
K |
76 |
L |
77 |
M |
78 |
N |
79 |
O |
80 |
P |
81 |
Q |
82 |
R |
83 |
S |
84 |
T |
85 |
U |
86 |
V |
87 |
W |
88 |
X |
89 |
Y |
90 |
Z |
91 |
MEZERA (SPACE) |
Například:
"TEST" funkce přeloží jako "84698384".
Úloha 5: Počet znaků nejdelšího slova v textu
int: theLongestWordLengthInTheText(text)
Tato funkce vrací počet znaků nejdelšího slova z proměnné text. Jednotlivá slova v textu odděluje znak mezery.
Uživatelské vstupy:
- text: str - Libovolně dlouhý textový řetězec
Návratová hodnota:
- countOfChars: int - Počet znaků nejdelšího slova
Úloha 6: Variace k-té třídy z n prvků
float: variation(k, n)
Tato funkce vrací variaci bez opakování k-té třídy z n prvků.
Variace je počet všech podmnožin k prvků z konečné množiny n, přičemž záleží na pořadí těchto prvků.
Pro účely zjištění počtu variací tedy množinu \( \{a;b\} \) a množinu \( \{b;a\} \) považujeme za dvě různé podmnožiny
konečné množiny n.
Variace bez opakování k-té třídy z n prvků formálně definujeme takto:
pro
Například:
- Variace 2 třídy ze 3 prvků a, b, c: (ab), (ba), (ac), (ca), (bc), (cb)
Faktoriál je formálně definován takto:
Například:
Jako speciální případ prázdného součinu platí, že:
Uživatelské vstupy:
- k: int - Počet prvků podmnožiny
- n: int - Počet prvků konečné množiny
Návratová hodnota:
- result: float - Variace bez opakování k-té třídy z n prvků
Hodnocení |
|
Počet úspěšně vyřešených úloh |
Počet získaných bodů |
0 - 1 |
0 |
2 |
1 |
3 |
2 |
4 |
3 |
5 |
4 |
6 |
5 |