Cerința
Un număr natural este numit echilibrat dacă suma cifrelor sale de pe poziții pare este un număr par, iar suma cifrelor sale de pe poziții impare este un număr impar. Pozițiile cifrelor sunt numerotate de la dreapta la stânga, astfel: cifra unităților este pe poziția 0
, cifra zecilor este pe poziția 1
ș.a.m.d.
Subprogramul echilibrat
are un singur parametru, n
, prin care primește un număr natural (n∈[10,10
9
]
). Subprogramul returnează valoarea 1
dacă n
este echilibrat sau valoarea 0
în caz contrar.
Scrieți definiţia completă a subprogramului.
Exemplu
Dacă n=25163912
, subprogramul returnează valoarea 1
, iar dacă n=11211
, subprogramul returnează valoarea 0
.
Important
Soluția propusă va conține definiția subprogramului cerut. 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.
bool echilibrat(int n) { int sp = 0 , si = 0; int cnt = 0; while(n) { if(cnt%2==0) sp+=n%10; else si+=n%10; n/=10; cnt++; } if(sp%2==0 && si%2==1) return 1; return 0; }