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

Pentru definiţia de mai jos a subprogramului f, ce se afişează ca urmare a apelului

f(12345);?

void f(long n)

{ cout< if(n!=0)

{ f(n/100); cout<}

Ajutor va rog cu o explicatie, am facut mi-a dat 5310 dar nu e bine si undeva gresesc si am nevoie de ajutor sa inteleg.


Alexandru987: imi tot da eroare si nu-mi apare dar e cout<< modulo 10
Alexandru987: n modulo 10*
boiustef: DAcă după semnul "mai mic" pui un spaţiu nu trunchiază mesajul....
boiustef: dacă în faţa lui, nu după....
boiustef: tr, să mai scrii odată, conţinutul nu e cllar...
boiustef: ce faci? mai scrii sau nu?
Alexandru987: void f(long n)
{ cout< if(n!=0)
{ f(n/100); cout<
Alexandru987: nu-mi apare nu stiu ce are o sa pun din nou intrebarea, dar in format jpg
CinevaFaraNume: Brainly nu stie sa transforme ' < ' in "<" inainte sa afiseze pagina. ' < ' e un caracter special in XML(deci implicit si in HTML) si nu se afiseaza
CinevaFaraNume: ' < ' in html se face cu & lt; (fara spatiu intre & si lt)

Răspunsuri la întrebare

Răspuns de CinevaFaraNume
3

Răspuns:

5310135

Explicație:

void f(long n)

{

cout<< n%10;

if(n!=0)

{ f(n/100); cout<<n%10;}

}

f(12345);

Stack(si ce afiseaza fiecare apel): f(12345) "5" -> f(123) "3" -> f(1) "1" -> f(0) "0"

Dupa, de la apelul f(0), executia se intoarce la f(1), mai afiseaza o data cifra 1, se intoarce la apelul f(123), mai afiseaza o data cifra 3, se intoarce la apelul f(12345) si mai afiseaza o data cifra 5(si aici se termina)

Afisat: "5310135"

Alte întrebări interesante