#100pbinfo
Se citeşte n şi un şir de n numere naturale.
Cerinţa
Să se determine câte elemente din şir sunt numere prime.
Date de intrare
Fişierul de intrare nrapprime.in conţine pe prima linie numărul n şi pe a doua linie n numere naturale separate prin spaţii.
Date de ieşire
Fişierul de ieşire nrapprime.out va conţine pe prima linie un singur număr natural, reprezentând numărul de elemente prime din şir.
Restricţii şi precizări
0 < n < 100
numerele de pe a doua linie a fişierului de intrare vor fi mai mici decât 1.000.000.000
Exemplu
nrapprime.in
5
25 17 2 10 13
nrapprime.out
3
poate sa-mi dea cineva rezolvarea de 100p?
MariusCelTrifan:
Pot sa-ti dau algoritmul, dar nu in fisier
Răspunsuri la întrebare
Răspuns de
0
Răspuns:
#include <iostream>
using namespace std;
int main()
{
unsigned int n,i,j,nr=0,X=0;
cout<<"n=";
cin>>n;
int a[n];
for(i=0;i<n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
for(i=0;i<n;i++)
{
for(j=2;j<=a[i]/2;j++)
{
if(a[i]%j==0)
X++;
}
if(X==0)
nr++;
else
X=0;
}
cout<<nr;
return 0;
}
Explicație:
using namespace std;
ifstream f("nrapprime.in");
ofstream g("nrapprime.out");
int prim(int x)
{
if(x<2)return 0;
for(int d=2;d*d<=x;d++)
if(x%d==0)return 0;
return 1;
}
int main()
{
int n,x,C=0;
f>>n;
for(int i=1;i<=n;i++)
{
f>>x;
if(prim(x))C++;
}
g<}
Ele se deschid cu ifstream F-fisierul de citire si ofstream fisierul de afisare
Fisierele se folosesc in principal la concursuri ca sa le fie mai usor profesoriilor sa corecteze
ca sa citesti din fisier in loc de cin>>x pui f>>x
respectiv la afisare in loc de cout<
#include
using namespace std;
ifstream f("nrapprime.in");
ofstream g("nrapprime.out");
int main()
{
int n,x,C=0;
f>>n;
for(int i=1;i<=n;i++)
{
f>>x;
int ok=1;
if(x<2)ok=0;
for(int d=2;d*d<=x && ok==1;d++)
if(x%d==0)ok=0;
if(ok==1)C++;
}
g<}
Alte întrebări interesante
Geografie,
8 ani în urmă
Geografie,
8 ani în urmă
Matematică,
8 ani în urmă
Informatică,
8 ani în urmă
Matematică,
8 ani în urmă
Geografie,
9 ani în urmă
Limba română,
9 ani în urmă