Buna, o vreau in C++ dar o rezolvare de clasa a 9 a daca se poate, cea mai simpla..

436. Sa se scrie un program care citeste de la tastatura un numar natural n si apoi un sir de n numere naturale si determina cel mai mare numar prim din sir si de cate ori apare.

Va rog !

Răspuns :

Răspuns:

#include <iostream>

using namespace std;

int prim (int n)

{

   if (n==0 || n==1) return 0;

   else {

      int d=1,i;

     for (i=2;i*i<=n && d;++i){

       if (n%i==0) d=0;

     }

     if (d==1) return 1;

     else return 0;

   }

}

int main()

{

   int n, a, ap=0, primmax, i;

   cin >> n >> a;

   i=1;

   while (!prim(a))

   {

       ++i; cin >> a;

   }

   primmax=a; ap=1;

   while (i<n)

   {

       ++i; cin >> a;

       if (prim(a))

           {

             if (a>primmax) { primmax=a; ap=1; }

             else if (a==primmax) ++ap;

           }

   }

   cout << primmax << " " << ap << endl;

   return 0;

}

Explicație: