scrieti un program c++, care sa rezolve cerintele.Se citesc n numere intregi.Sa se determine valoarea maxima citita si sa se decida daca aceasta este unica.Sa se determine valoarea minima citita si sa se decida daca aceasta este unica.Sa se determine cate numere citite sunt numere prime.Sa se determine inversul (oglinditul) fiecarui numar citit si sa se memorize intr-un vector A.
Răspunsuri la întrebare
Răspuns:
#include<iostream>
using namespace std;
bool prim(int a)
{
int i;
for (i = 2; i <= a / 2; i++)
if (a % i == 0)
return 1;
return 0;
}
int invers(int a) {
int inv=0;
while (a != 0) {
inv = inv * 10 + a % 10;
a = a / 10;
}
return inv;
}
int main() {
int i, n, v[100], min, max, a[100], prime=0, aparitie_max=0, aparitie_min=0;
cin >> n;
for (i = 0; i < n; i++)
{
cin >> v[i];
}
max = v[0];
min = v[0];
for (i = 0; i < n; i++)
{
if (v[i] > max)
max = v[i];
if (v[i] < min)
min = v[i];
if (prim(v[i]) == 0)
prime=prime+1;
}
for (i = 0; i < n; i++) {
if (max == v[i])
aparitie_max++;
else
if (min == v[i])
aparitie_min++;
a[i] = invers(v[i]);
cout << a[i] << " ";
}
cout << endl;
cout << "nr. prime " << prime << "\n";
cout << "max=" << max<<"\n";
if (aparitie_max > 1)
cout << "Maximul nu este unic\n";
else
cout << "Maximul este unic\n";
cout << "min=" << min << "\n";
if (aparitie_min > 1)
cout << "Minimul nu este unic\n";
else
cout << "Minimul este unic\n";
system("pause");
}