Mam za zadanie zrobić funkcję rekurencyjną, która wyświetla każdy krok, który wykonuje, mam jednak z tym problem, a mianowicie funkcja tak jakby "ignoruje" to, co zaznaczyłem w kodzie. Czy ktoś wie może dlaczego tak się dzieje? Powinienem coś dodać jeszcze? Wszystko ma się znajdować w rekurencji, nie ma być używana żadna pętla. Proszę o pomoc, bo naprawdę już nie wiem co mam zrobić :/
#include <iostream>
using namespace std;
unsigned long int silnia(int n)
{
cout <<"silnia("<<n<<")"<<endl;
if (n==0)
{
cout<<n<<" krok; "<<"(-->1)"<<endl;
return 1;
}
else
{
return n* silnia(n - 1);
}
>to jest ignorowane cout<<n<<" krok; "<<"silnia("<<n<<")="<<silnia(n)<<", x="<<n<<", silnia("<<n-1<<")="<<silnia(n-1)<<endl;
}
int main() {
int n;
for(;;)
{
cout<<"podaj n"<<endl;
cin>>n;
cout<<"silnia("<<n<<")="<<silnia(n)<<endl;
}
return 0;
}