Informatică, întrebare adresată de mocanualexandrp2ikb6, 9 ani în urmă

Se da un sir format din n elemente, numere naturale. Calculati suma elementelor din secventa determinata de primul si ultimul element prim. (C++)

Răspunsuri la întrebare

Răspuns de Relampago
5

#include <iostream>

using namespace std;

int n,i,v[101],primul, ultimul,s;

bool ok;

///am folosit o functie prim care testeaza daca un numar e prim sau nu

int prim(int x)

{

   if(x<2)return 0;

   if(x%2==0 && x!=2)return 0;

   ///am scapat de numerele pare asa ca voi folosi un for doar cu numere impare,mergand pana la d*d(radical din x)

   for(int d=3; d*d<=x; d++)

       if(x%d==0)return 0;

   return 1;

}

int main()

{    

   cin>>n;

   for(i=1; i<=n; i++)

   {

       cin>>v[i];

       if(prim(v[i]) && ok==0)primul=i,ok=1;

       if(prim(v[i]))ultimul=i;

   }

   for(i=primul; i<=ultimul; i++)

       s+=v[i];

   cout<<s;

   return 0;

}


Alte întrebări interesante