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 că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.