👤

Imi poate explica cineva cum este parcurs programul urmator pentru f(23951)?

int f(int n)
{
if (n==0)
return 0;
else
{
int c=f(n/10);
if(n%10>c)
return n%10;
else
return c;
}
Ce valoare ia c, dat fiind ca f(n/10) nu a ajuns la final, ca sa returneze ceva?


Răspuns :

Acea variabila c, o faci separat, pentru ca la un moment dat vei ajunge la un rezultat.

Am scris functia, apoi c-ul, si apoi conditia la care sa ma intorc cand termin. Am facut asta pentru fiecare n. De exemplu f(23) a returnat 3 iar c-ul devine 3. Adica dupa ce ai scris tot, rezolvi inlocuind de jos in sus.

Vezi imaginea COSMAANDRA2000