Informatică, întrebare adresată de mirunicaioana0708, 8 ani în urmă

Am nevoie de exemplul numeric !!!


Se consideră subprogramul f, definit alăturat. Ce se va afişa la apelul f(38);?
void f(int x)
{
if(x)
{
f(x/3);
cout< }
}


radu9614: Nu cred ca e scris complet. Ce afiseaza acolo?
mirunicaioana0708: void f(int x)
{
if(x)
{
f(x/3);
cout<}
radu9614: Ai pus acelasi lucru. La cout acolo trebuie sa fie doi de <<, si ce afiseaza. Adica nu stiu sa o rezolv pentru ca nu stiu ce vrea sa afiseze acolo.
mirunicaioana0708: Sunt semnele de mai mic specifice cout și x mod 3+1
radu9614: a ok deci e cout << x%3 + 1?
mirunicaioana0708: Da

Răspunsuri la întrebare

Răspuns de radu9614
1

Răspuns:

Cand cout-ul este dupa apelul recursiv, se vor afisa invers valorile. Adica ajunge intai cat de departe poate, si dupa incepe sa afiseze.

f( 38 ) - afisare 3

f( 12 ) - afisare 1;

f( 4 ) - afisare 2;

f( 1 ) = afisare 2;

Fiindca se afiseaza invers, se va afisa 2213

Explicație:

Alte întrebări interesante