< Zpět na seznam úloh

28 Všechny tvary

var datasets = [
  {argv: ["slovo", "Na počátku bylo slovo a to slovo bylo dobré"], out: ["slovo", "slovo"]},
  {argv: ["slovo", "Slova jsou vysloveně lepší než přísloví slovům věřím a slovem to všechno začíná"], out: ["Slova", "slovům", "slovem"]},
  {argv: ["ucho", "Uchopil lem roucha ale žuchla mu ropucha do ucha S předtuchou v uchu nakoupil ucházející chemikálie od UCHEM"], out: ["ucha", "uchu", "UCHEM"]},
  {argv: ["město", "Všechny tvary jsou město bez města městu městem měst městům městech městy a některé se opakují"], out: ["město", "města", "městu", "městem", "měst", "městům", "městech", "městy"]},
];
var names = ["slovo", "text"];

Program má v textu najít zadané podstatné jméno ve všech pádech jednotného i množného čísla. Máme zaručené, že podstatné jméno je středního rodu, podle vzoru město, a že je zadané v prvním pádě čísla jednotného. Zadaný text obsahuje jen česká písmena a mezery.

Výstupem programu bude seznam obsahující všechna nalezená slova, v původním pořadí. Předpokládejte, že se slovo skloňuje pravidelně, i kdyby to tak zrovna mohlo nebýt. Jiná slova se na výstupu objevit nesmějí. Program nesmí být citlivý na velikost písmen, ale nalezená slova musí vracet přesně tak, jak byla napsaná.

def main(slovo, text):
  return [slovo, slovo]