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

Cum gandesti atunci cand trebuie sa scrii o functie recursiv, de ex pt maximul dintr-un numar sau combinari, aranjamente, etc


me2018: cifra maxima dintr-un numar?
Utilizator anonim: Muiiiiiiii in gura lu ma ta ....
Utilizator anonim: mai bine o iei tu în gat
smallworldsanalolee: Da, cifra maxima, dar eu ma refer in general, cum scrii ca sa fie corect, stiu ca nu exista un model concret dar trebuie sa existe un mod in care sa le gandesti
me2018: la fel ca in cazul in care scrii cu while. Exista o conditie de autopel, in locul conditiei care realizeaza repetitia
smallworldsanalolee: Multumesc

Răspunsuri la întrebare

Răspuns de me2018
1

Cum afli cifra maxima dintr-un numar iterativ?

maxim=0;

cin>>n;

while(n>0)

{

if(n%10>maxim) maxim=n%10;

n=n/10;

}

recursiv:  

int ciframax(int n,int maxim)

{

if(n>0)//conditia ca sa se extraga ultima cifra

  if(n%10>maxim)//se compara ultima cifra cu maxim

return

     ciframax(n/10,n%10);

//se autoapeleaza functia eliminand din n ultima cifra

//si modificand maxim in n%10

 else

//se elimina din n ultima cifra si maxim nu se modifica , daca n%10<+maxim


  return(ciframax(n/10,maxim);

else return 0;

}


Alte întrebări interesante