# PBinfo #1582 – max_min – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

Cerința
Se citesc de la tastatură n numere naturale. Să se determine numărul a cărui sumă a cifrelor este cea mai mare, respectiv cea mai mică.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spații.

Date de ieșire
Minimul va fi afișat pe primul rând și maximul pe al doilea rând.

Restricții și precizări

1 ≤ n ≤ 1000
cele n numere citite sunt mai mici decât 2.000.000.000
dacă există mai multe numere cu aceeași sumă minimă/maximă se va afișa primul găsit

Exemplu:
Intrare

5 145 225 198 326 874
Ieșire

225
874
Explicație

145 -> 1+4+5=10
225 -> 2+2+5=9 (minimul)
198 -> 1+9+8=18
326 -> 3+2+6=11
874 -> 8+7+4=19 (maximul)

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int sumcif(int n) {
    int s = 0;
    while (n > 0) {
        s = s + n % 10;
        n = n / 10;
    } return s;
}
int main() {
    int n, sminim = 10000, smaxim = -1, minim = 10000000, maxim = -1;
    cin >> n;
    for (int i = 1; i <= n; i++) {
        int temp;
        cin >> temp;
        int stemp = sumcif(temp);
        if (stemp > smaxim) {
            maxim = temp;
            smaxim = stemp;
        } if (stemp < sminim) {
            minim = temp;
            sminim = stemp;
        }
    } cout << minim << "\n" << maxim;
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/1582)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/1582/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-1582/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
