Programování 2: První sada příkladů

A. Rekurze
Jak funguje rekurze si můžete vyzkoušet na výpočtu faktoriálu nebo na výpočtu n-té mocniny zadaného čísla. Doporučuji jako první příkaz vytvářené funkce vložit writeln, který vypíše parametry, se kterými byla fukce zavolána.
1. Vytvořte funkci, která bude počítat n-tou mocninu zadaného čísla
2. Upravte předchozí program tak, aby využil toho, že při sudém exponentu lze výpočet zrychlit (nemusí se počítat jen vztahem XN = X * XN-1, ale i XN = XN/2 * XN/2)
3. Napište program, který s využitím rekurze počítá n-tý člen Fibonacciho posloupnosti (Fib(1)=Fib(2)=1; Fib(n)=Fib(n-1)+Fib(n-2))
*4. Vytvořte program, který s využitím rekurze najde postup, jak projít všechna políčka šachovnice koněm (můžete použít i menší rozměr 6x6)
B. Řetězce
1. Vytvořte program, který vypíše zadaný text pozpátku (písmenko po písmenku)
*2. Upravte předchozí program tak, aby vypsal zadaný text pozpátku nikoli po písmenech, ale po celých slovech
3. Vytvořte program, který se zeptá na 2 slova (každé uloží do jedné proměnné) a poté vypíše tato slova za sebou podle abecedy
*4. Pokuste se upravit předchozí program tak, aby pracoval se třemi slovy
5. Napište program, který zjistí počet slov v zadané větě (pro jednoduchost předpokládejte, že jsou slova od sebe oddělena právě jednou mezerou)
6. Vytvořte program, který odstraní ze zadané věty vícenásobné mezery a pak takto upravenou větu vypíše na obrazovku
Příklad:
  Zadej větu: Toto    je   věta s     vícenásobnými     mezerami.
  Opravená věta: Toto je věta s vícenásobnými mezerami.

Příklady označené * patří mezi obtížnější, ostatní byste si měli vyzkoušet.