Pagini recente » Cod sursa (job #13693) | Cod sursa (job #615468) | Cod sursa (job #883352) | Cod sursa (job #2035546) | Cod sursa (job #756564)
Cod sursa(job #756564)
//metoda gandita un pic
#include <iostream>
#include <fstream>
using namespace std;
bool prim[100005];
void init(int x) {
int i;
for(i=1; i<=2*x; i++) {
prim[i]=1;
}
prim[1]=1;
}
int cmmdc(int a, int b) {
if(b==0) return a;
return cmmdc(b, a%b);
}
int main() {
ifstream f("sum.in");
ofstream g("sum.out");
int n, x, t, i, j, k;
long long s=0;
f>>n;
for(t=1; t<=n; t++) {
f>>x;
init(x); //le face pe toate 1;
s=0;
for(i=2; i<=x; i++) {
if(x%i==0) prim[i]=0;
}
for(i=1; i<2*x; i++) {
if(!prim[i])
for(j=i; j<=2*x; j+=i) prim[j]=0;
}
// if(x%2==0) for(i=2; i<=2*x; i+=2) prim[i]=0;
for(i=1; i<=2*x; i++)
if(prim[i]) s+=i;
g<<s<<"\n";
}
f.close();
g.close();
return 0;
}