Sunteți pe pagina 1din 2

# Cerinta

Un numar nenul se numeste echilibrat daca suna cufrelor de pe pozitii pare este
egala cu suna cifrelor de pe pozitii impare, cifrele se numeroteaza de la dreapta
la stanga incepand cu valoarea 0;
EX: 121 este echilibrat pentru ca 2=1+1
Scrieti definitia completa a programului echilibrat cu doi parametrii a, bpein care
de prineste cate un numar natural a<b.
Subprogramul afiseaza pe ecran separate prin cate un spatiu, in ordine
descrescatoare, toate numerele echilibrate din intervalul [a,b]. Daca in interval
nu exista astfel de numere, subprogramul afiseaza pe ecran mesajul "nu exista"

## Cum o abordam?
### Hai sa vedem ce ne cere, zic:
- Afisam niste numere in ordine descrescatoare -> Deci o sa avem nevoie de un for
de la b la a (pentru ca b e mai mare decat a)
``` c++
bool exista_numere = false;
for(int i = b; i >= a; i--) {
// vedem noi ce facem mai departe
}
```
- acum, pentru fiecare i, trebuie sa vedem daca e echilibrat
```c++
int numar_curent = i;
int index_numar = 1; //Asta iti spune pozitia durenta a cifrei in numar
int suma_pare = 0;
int suma_impare = 0;

while(numar_curent != 0) {
int cifra = i % 10;
if (index_numar % 2 ==0) {
suma_pare += cifra;
} else {
suma_impare += cifra;
}
numar_curent = numar_curent / 10;
}
if (suma_pare == suma_impare) {
cout << i << " ";
exista_numere = true;
}
```

- La final, verifici daca au existat numere sau nu


```c++
if (exista_numere == false) {
cout << "nu exista";
}
```

## Program complet

```c++
#include<iostream>
using namespace std;

void echilibrat(int a,int b) {


bool exista_numere = false;
for(int i = b; i >= a; i--) {
int numar_curent = i;
int index_numar = 1; //Asta iti spune pozitia durenta a cifrei in numar
int suma_pare = 0;
int suma_impare = 0;

while(numar_curent != 0) {
int cifra = i % 10;
if (index_numar % 2 ==0) {
suma_pare += cifra;
} else {
suma_impare += cifra;
}
numar_curent = numar_curent / 10;
}
if (suma_pare == suma_impare) {
cout << i << " ";
exista_numere = true;
}
}
if (exista_numere == false) {
cout << "nu exista";
}

}
```

S-ar putea să vă placă și