Rekurencyjne
wywoływanie metod
Rekurencyjne wywoływanie metod to sytuacja, w której metoda wywołuje sama siebie. Jest to pewien sposób programowania, który może być używany w sytuacjach, gdy problem, który chcemy rozwiązać, da się podzielić na mniejsze części, które są podobne do całości.
Ten program w C# oblicza silnię liczby 5 za pomocą rekurencyjnej metody "Silnia"
using System;
class Program
{
static void Main(string[] args)
{
int wynik = Silnia(5); // Obliczenie silni z 5
Console.WriteLine("Silnia z 5 wynosi: " + wynik); // Wyświetlenie wyniku
}
// Metoda rekurencyjna obliczająca silnię { 5 * 4 * 3 * 2 * 1 = 120 }
static int Silnia(int n)
{
if (n == 0)
{
// Dla n = 0 silnia wynosi 1
return 1;
}
else
{
// Dla n > 0 silnia wynosi n * silnia z (n - 1)
return n * Silnia(n - 1);
}
}
}
Silnia z 5 wynosi: 120
Wyjaśnienie
Jeśli argument "n" jest równy 0, zwracana jest wartość 1, w przeciwnym razie zwracana jest wartość "n" pomnożona przez wartość silni z liczby "n-1". Dla n=5 wynik wynosi 120.