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


Úloha 4: Abeceda

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 k n {\displaystyle k\leq n}

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:  {\displaystyle n!=1\cdot 2\dotsb n=\prod _{k=1}^{n}k\qquad {\mbox{pro }}n>0} 

Například:


Jako speciální případ prázdného součinu platí, že:

{\displaystyle 0!=1}


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


Naposledy změněno: Čtvrtek, 19. května 2022, 12.14