Cod sursa(job #980955)

Utilizator petrutsxMihaela Petruta Gaman petrutsx Data 5 august 2013 23:48:23
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include<stdio.h>
#define NMAX 2000000

char ok[NMAX];
int N, nr;

void Erathostenes(int N){
	int i, j;
	nr = 1;
	for(i = 2; i <= N; i++)
		ok[i] = 0;

	for(i = 3; i <= N; i+=2)
		if(!ok[i]){
			nr++;
			for(j = i+i; j <= N; j+=i)
					ok[j] = 1;
		}
}

int main(){
	FILE *pf, *pg;
	pf = fopen("ciur.in", "r");
	pg = fopen("ciur.out", "w");

	fscanf(pf, "%d", &N);
	Erathostenes(N);
	fprintf(pg, "%d", nr);

	fclose(pf);
	fclose(pg);

	return 0;
}