👤

Se da un vector cu n numere. Determinati pozitia primului numar prim din sir.

Ex:20 50 11 13 8
3


Răspuns :

Răspuns:

#include <iostream>

using namespace std;

int n, i, v[100];

bool prim(int num)

{

   int p=1;

   if (num<2) p=0;

   else

   {

       if (num>2)

       {

           if (num%2==0) p=0;

           else

           {

               for (int d=3; d*d<=num; d+=2)

                   if (num%d==0)

               {

                   p=0; break;

               }

           }

       }

   }

   return p;

}

int main()

{

   cout << "n="; cin >> n;

   cout << "introdu " << n << " numere naturale separate prin spatiu" << endl;

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

   {

       cin >> v[i];

   }

   int poz=0;

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

   {

       if (prim(v[i]))

       {

           poz=i; break;

       }

   }

   if (poz==0) cout << "nu exista prim";

   else cout << poz;

}

Explicație:

Explicație:

Prima oara avem nevoie de o functie care determina daca un numar e prim (nrprim) .  apoi o functie care primeste ca argument un vector , ii pargurge toate elementele si cand inalneste un numar prim returneaza pozitia la care se afla.

Ps: limbaju e js.

Răspuns:

var nrprim = function(nr) {

   var aux = 2;

   while(aux < nr) {

       if(nr%aux == 0) {

           return false;

       }

       aux++;

   }

   return true;

}

var verificare = function(vector) {

   for(i = 1 ; i < vector.length;i++) {

       if(nrprim(vector[i]) == true) {

           return i - 1;

       }

   }

}  

var vec = [6,11,12];

console.log(verificare(vec));