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

functia f1 primeste un x natural si returneaza in parametrul y cifra sa minima.

cat mai repede, dau coroana​

Răspunsuri la întrebare

Răspuns de Sergetec
1

Salut!

Ai subprogramul in C++ mai jos

int f1(int x, int& y) {

   y = 9; //setez val lui y la cea maxima

   while (x) {

       if (x % 10 < y) {

           y = x % 10;

       }

       x /= 10;

   }

   return y;

}


alinetare2005: x div 10
alinetare2005: nu trebuia sa fie tot in if?
Sergetec: Nu trebuie, daca este tot in if atunci vom avea un while loop infinit
Sergetec: Daca il punem in if: atunci vom elimina ultima cifra a lui n doar atunci cand am gasit o cifra mai mica decat y
Sergetec: Deci daca o cifra nu va fi mai mica decat y atunci programul se blocheaza
Alte întrebări interesante