Cerința
Subprogramul Egal are un parametru, n, prin care primește un număr natural cu cel puțin o cifră impară. Subprogramul returnează valoarea 1 dacă toate cifrele impare ale lui n sunt egale între ele sau valoarea 0 în caz contrar.
Scrieți definiția completă a subprogramului.
Restricții și precizări:
10 ≤ n ≤ 109
Exemplu:
Dacă n=7727470 sau n=7240 atunci subprogramul returnează 1, iar dacă n=7921470 atunci subprogramul returnează 0.
Important
Soluția propusă va conține definiția funcției cerute. Prezența în soluție a altor instrucțiuni poate duce erori de compilare sau de execuție care vor avea ca efect depunctarea soluției.
Răspunsuri la întrebare
Răspuns de
0
int Egal(int n){
int c = -1;
while(n){
int cif = n%10;
n/=10;
if(c == -1)
c = cif;
else if(cif != c)
return 0;
}
return 1;
}
int c = -1;
while(n){
int cif = n%10;
n/=10;
if(cif % 2 == 1)// am spus in comentariu sa adaugati linia asta
if(c == -1)
c = cif;
else if(cif != c)
return 0;
}
return 1;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Informatică,
8 ani în urmă
Matematică,
9 ani în urmă
Chimie,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
"if(cif % 2 == 0)" in fata
if(c == -1)
c = cif;
else if(cif != c)
return 0;