Cerinţa
Să se scrie un program care citeşte de la tastatură un număr natural n şi apoi un şir de n numere naturale şi determină cel mai mare număr prim din șir și de câte ori apare.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale.
Date de ieşire
Programul afișează pe ecran numerele M nrap, separate printr-un spațiu, reprezentând cel mai mare număr prim din șir și de câte ori apare acest număr în șir.
Restricţii şi precizări
0 < n < 1000
cele n numere citite vor fi mai mici decât 2.000.000.000
pentru toate testele de evaluare, datele de intrare vor conține cel puțin un număr prim
Răspunsuri la întrebare
Răspuns de
1
#include <iostream>
using namespace std;
bool prim (int num)
{
if (num==0 || num==1) return false;
if (num==2) return true;
if (num>2)
{
if (num%2==0) return false;
for (int i=3; i*i<=num; i+=2)
if (num%i==0) return false;
return true;
}
}
int main()
{
int n, i, maxprim=0, nr_ap=0, num;
cin >> n;
for (i=1; i<=n; ++i)
{
cin >> num;
if (prim(num))
{
if (num>maxprim)
{
maxprim=num; nr_ap=1;
}
else
{
if (num==maxprim) ++nr_ap;
}
}
}
cout << maxprim << " " << nr_ap;
return 0;
}
Alte întrebări interesante
Biologie,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Biologie,
9 ani în urmă