Witam,
Od tak dziś postanowiłem pogłębiać tajniki rekurencji. Nie mam za dużego doświadczenia w tym. Chciałbym zapytać, dlaczego kompilator wyświetla mi się do momentu wczytania, a po nim następuje zamknięcie okna. Przyznam, że trochę się już męczę nad znalezieniem błędu więc postanowiłem napisać tutaj. Oto kod:
#include <iostream>
auto licz(int n) -> int;
//************************************
int main()
{
std::cout << "Funkcja licząca liczby naturalne od 0 do n.\nPodaj n: ";
int n{};
std::cin >> n;
int licznik{0};
while(licznik < n)
{
std::cout << " " << licz(licznik);
licznik++;
}
std::cin.ignore();
getchar();
return 0;
}
//************************************
auto licz(int n) -> int
{
return n+licz(n-1);
}
Wiem, że można wykonać to "od tyłu" - dekrementować podaną na początku liczbę sumując n (jest to trochę łatwiejszy sposób, natomiast chciałbym to zrobić "od przodu" - użyłem do tego while, aby inkrementować liczby od zera aż do liczby podanej.
Z góry bardzo dziękuję za pomoc!