Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem ze zrozumieniem outputa

Ostatnio zmodyfikowano 2017-07-13 11:54
Autor Wiadomość
Bercik97
Temat założony przez niniejszego użytkownika
Problem ze zrozumieniem outputa
» 2017-07-13 11:46:03
Witam, mógłby ktoś wyjaśnić dlaczego output wychodzi 24 ?

C/C++
int f( const int x )
{
    return x > 1 ?( x * f( x - 1 ) )
        : 1;
}
int main()
{
    cout << f( 4 );
}

Nie rozumiem jak z tego " (x*f(x-1) " wychodzi 24. Proszę o pomoc
P-163237
kistel66
» 2017-07-13 11:49:45
Jest to zwykły, rekurencyjny wzór na silnie.

f(4) = 4 * f(3)
f(3) = 3 * f(2)
f(2) = 2 * f(1)
f(1) = 1

czyli

f(1) = 1
f(2) = 2*1 (2)
f(3) = 3*2 (6)
f(4) 4*6  (24)

P-163238
Bercik97
Temat założony przez niniejszego użytkownika
» 2017-07-13 11:54:23
Wielkie dzieki
P-163239
« 1 »
  Strona 1 z 1