Răspuns :
Am incercat sa explic in comentarii tot ce am facut. Sper ca te-am ajutat!
Programul in C++:
#include <iostream>
using namespace std;
int nrmatrice,matrice[101],nrprim,gasit=0,i,j;
//nrmatrice = numarul de elemente ale matricei
//nrprim = numarul prim in caz ca e gasit. daca nu e gasit nici un numar prim, el este ultimul numar din matrice.
//gasit = 1 - a fost gasit un numar prim ; 0 - nu a fost gasit un numar prim
int main()
{
cin>>nrmatrice;
for(i=1;i<=nrmatrice;i++)
cin>>matrice[i];
for(i=1;i<=nrmatrice && !gasit;i++)
{
//Ca un numar sa fie prim, el trebuie sa fie una dintre urmatoarele:
// 1. Egal cu 2
// 2. Mai mare sau egal cu 3 si impar
// !! Numarul 1 NU ESTE numar prim
bool prim=1; //Presupunem ca e prim si incercam sa dovedim ca nu este.
nrprim = matrice[i];
if(nrprim%2==0 && nrprim>2)prim=0; // Stabilim daca numarul este un numar par mai mare decat 2, evitand cazul in care este 2, 2 fiind numar prim
if(nrprim==1)prim=0; //Numarul 1 nu este numar prim.
for(j=3;j<=nrprim/2 && prim!=0;j+=2) // Mergem din 2 in 2 ca sa evitam numerele pare, fiindca am stabilit mai sus ca nu e un numar par.
{
if(nrprim%j==0)prim=0; //Daca gasim un numar cu care numarul nostru se divide, inseamna ca nu e prim
}
if(prim==1){
gasit=1;
nrprim=matrice[i];
}
}
if(gasit==1)
cout<<"Numarul este: "<<nrprim;
else
cout<<"Nu exista numere prime in matrice.";
return 0;
}
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări suplimentare sau nevoie de ajutor, vă rugăm să ne contactați cu încredere. Așteptăm cu drag să reveniți și nu uitați să ne salvați în lista dumneavoastră de favorite!