Cod sursa(job #3136809)
| Utilizator | Data | 8 iunie 2023 17:55:07 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | c-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.5 kb |
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
int main()
{
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
unsigned int *n,num_primes=0;
scanf("%u",&n);
bool *sieve=(bool *)calloc(n,sizeof(bool));
for(unsigned int i=2;i<=n;i++)
if(sieve[i]==false)
{
num_primes+=1;
for(unsigned int j=i+i;j<=n;j+=i)
sieve[j]=true;
}
printf("%u",num_primes);
free(sieve);
return 0;
}
