dr inż. Maciej Kraszewski

inżynier

menedżer R&D

nauczyciel akademicki

dr inż. Maciej Kraszewski

inżynier

menedżer R&D

nauczyciel akademicki

Metody programowania. Rekurencja

Zadania należy rozwiązać w dowolnym wybranym języku programowania. Warunkiem jest oczywiście, aby język wspierał rekurencyjne wywołania funkcji.

Zadania do wykonania

Zadanie 1 – Silnia

  1. Zaimplementuj funkcję obliczającą silnię danej liczby. Napisz dwie wersje funkcji. Pierwsza powinna wykorzystywać rekurencję, a druga działać w sposób iteracyjny.

Zadanie 2 – Ciąg Fibonacciego

  1. Zaimplementuj funkcję obliczającą n-ty element ciągu Fibonacciego. Napisz dwie wersje funkcji. Pierwsza powinna wykorzystywać rekurencję, a druga działać w sposób iteracyjny.
  2. Sprawdź jaka jest maksymalna wartość argumentu funkcji przy której da się ją poprawnie wywołać (w sensownym czasie) w przypadku obu wersji.

Zadanie 3 – Wieże Hanoi

  1. Napisz program, który rozwiąże zadanie wieży Hanoi o zadanej przez użytkownika wysokości.
  2. Możesz zastosować dowolny sposób wizualizacji wyniku działania programu (aplikacja konsolowa, interfejs graficzny).