# PBinfo #4332 – PrimMaxMin – Rezolvare C++

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

## Enunț

Cerința
Se dă un șir cu n elemente, numere naturale nenule. Să se determine suma dintre cel mai mic și cel mai mare element prim din șir.

Date de intrare
Programul citește de la tastatură numărul n, apoi cele n elemente ale șirului.

Date de ieșire
Programul va afișa pe ecran numărul cerut.

Restricții și precizări

1 ≤ n ≤ 1.000
elementele șirului vor fi mai mici decât 1.000.000.000
șirul va conține cel puțin un element prim

Exemplu:
Intrare

5
18 23 13 40 37
Ieșire

50
Explicație
Cel mai mic element prim al șirului este 13, iar cel mai mare este 37. Suma lor este 50.

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int main() {
	int n , max = -1, min = 1000000005, x;
	cin >> n;
	for(int i = 1; i <= n ; i ++)
	{
		cin >> x;
		bool prim = true;
		if(x < 2)
			prim = false;
		for(int d = 2 ; d*d <= x ; d ++)
			if(x % d == 0)
				prim = false;
		if(prim)
		{
			if(x > max)
				max = x;
			if(x < min)
				min = x;
		}
	}
	cout << max + min << endl;
    return 0;
}
```

## Resurse

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