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

Să se scrie o funcție RECURSIVA numită cifraMinPara care primește ca parametru un număr N și returnează cea mai mică cifră pară a sa.


Semnătură funcție:


**Funcția trebuie să se numească cifraMinPara.

**Funcția trebuie să primească un parametru de tip int și să returneze un int.


Restricții:


**0 ≤ N ≤ 1 000 000 000

**Se garantează că numărul va conține cel puțin o cifră pară


Exemplu:


cifraMinPara(123456) va returna 2

Răspunsuri la întrebare

Răspuns de jarvan4eu
1

Răspuns:

int cifraMinPara(int n)

{

   int min = 9; // presupunem min ca cea mai mare cifra

   bool found = false; // verificator pentru ca numarul sa aibe cifre pare

 

   while(n != 0) // cat timp avem cifre

   {

       if(min > n%10 && (n%10)%2 == 0) // daca ultima cifra e mai mica ca minim si este para

       {

           min = n%10; // min devine ultima cifra

           found = true; // am gasit un rezultat cel putin

       }

       n=n/10; // eliminam ultima cifra

   }

   

   if(found) // daca am gasit cel putin un rezultat

   {

       return min; // afisam rezultatul

   }

   

   return 0; // daca nu am gasit rezultat, returnam 0

}

Explicație:

Am scris comentarii direct pe cod sa iti fie mai usor sa intelegi.

Alte întrebări interesante