Cod sursa(job #1008290)

Utilizator rucarRucareanu Alexandru rucar Data 10 octombrie 2013 19:55:27
Problema Ciurul lui Eratosthenes Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.48 kb
#include <stdio.h>
#include <stdlib.h>

int main()
{
	int i, j, n, nr = 0;
	char *v;
	FILE *f = fopen("ciur.in", "r");
	fscanf(f,"%d", &n);
	v = (char*)malloc(sizeof(char)*n);
	for (i = 1; i <= n; i++)
		v[i] = 1;
	v[1] = 0;
	for (i = 2; i <= n; i++)
	{
		if (v[i])
		{
			for (j = i+i; j <= n; j += i)
				v[j] = 0;
		}
	}
	for (i = 1; i <= n;i++)
	if (v[i])
		nr++;
	FILE *g = fopen("ciur.out", "w");
	fprintf(g,"%d", nr);
	fclose(f);
	fclose(g);
	return 0;
}