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.