Informatică, întrebare adresată de avidru123, 8 ani în urmă

Cerinţa
Scrieți definiția completă a subprogramului P care primeşte prin intermediul parametrului n un număr natural nenul (n≤100), iar prin intermediul parametrului x un tablou unidimensional cu n componente întregi, de maximum șase cifre fiecare.

Subprogramul furnizează prin intermediul parametrului s suma elementelor din tabloul x care au valori numere prime.

Restricţii şi precizări
0 < n ≤ 100
numele subprogramului cerut este P
parametrii sunt, în această ordine: x, n, s
elementele vectorului x sunt indexate de la zero

Exemplu
Dacă n=6 și x=(12, 7, 6, 3, 8, 5), după apel s=15.

Important
Soluţia propusă va conţine definiţia subprogramului cerut și eventual al altor subprograme, apelate de acesta. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.

Răspunsuri la întrebare

Răspuns de AndreiIulian2003
1

Răspuns:

int P( int x[], int n, int& s)

{

    s=0;

    for(int i=0;i<n;i++)

    {

         int cnt=1;

         int d=2;

         int c=x[i];

         while(x[i]>1)

         {

              int p=0;

              while(x[i]%d==0)

                     x[i]/=d , p++;

              if(p>0)

                     cnt*=(p+1);

              d++;

              if(d*d>x[i])

                     d=x[i];

          }

          if(cnt==2)

              s+=c;

   }

}

Alte întrebări interesante