Zadanie:
Zaimplementuj jako metody klasy Testy rekurencyjne wersje funkcji silnia(int n) oraz fib(int n) obliczające silnię oraz n-ty wyraz ciągu Fibonacciego; które wynik przekazują poprzez wyjątek. Chodzi o to, aby zamiast instrukcji return zgłosić wyjątek, którego atrybut lub pole będzie zawierało wynik obliczeń. Zaprogramuj też dla porównania „zwykłe” wersje rekurencyjne tych metod i zbadaj, która wersja jest szybsza.
Warto jakoś zacząć - najlepiej od łatwiejszej silni. Zaimplementujemy więc “zwykłą” rekurencyjną silnię
public int silnia_r(int n) {
if (n <= 1) {
return 1;
}
else {
return n * silnia_r(n-1);
}
}