Ma poate ajuta cineva cu o problema pe pb-info. Este problema 510:
Cerința
Se dă un vector cu n elemente, numere naturale. Afișați în ordine crescătoare valorile prime din acest vector.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, reprezentând elementele vectorului.
Date de ieșire
Programul va afișa pe ecran valorile prime din vector, în ordine crescătoare, separate prin exact un spațiu.
Restricții și precizări
1 ≤ n ≤ 1000
cele n numere citite vor fi mai mici decât 1.000.000.000
Răspunsuri la întrebare
Răspuns de
4
#include<iostream>
using namespace std;
int main()
{
int n, prim, v[1001], i, j, div;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
if(v[i]>v[j]) {
int aux=v[i];
v[i]=v[j];
v[j]=aux;
}
for(i=1;i<=n;i++)
{
prim=1;
if(v[i]<2) prim=0;
if(v[i]>2) {
if(v[i]%2==0) prim=0;
else {
for(div=3;div*div<=v[i];div+=2)
if(v[i]%div==0) { prim=0; break; }}}
if(prim==1) cout<<v[i]<<" ";
}
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Engleza,
8 ani în urmă
Ed. tehnologică,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Chimie,
9 ani în urmă