Pagini recente » Cod sursa (job #2844227) | Borderou de evaluare (job #3191295) | Istoria paginii utilizator/toni1817 | Istoria paginii utilizator/toni1817 | Cod sursa (job #219616)
Cod sursa(job #219616)
#include <stdio.h>
#include <math.h>
const int N = 1000001;
int n,nr,i,j,k,nrprim [N];
bool gasit,prim [N];
int main()
{
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf("%d",&n);
for (i=2;i<=N;i++)
prim [i] = true;
for (i=2;i<=sqrt(n);i++)
if(prim[i])
for (k=i*i;k<=n;k=k+i)
prim [k] = false;
k = 0; //Pozitia de scriere.
for (i = 1; i<=n; i++)
{
if (prim [i])
{
k++;
nrprim [k] = i;
}
}
for (i = 2; i <= (n-1); i++)
for (j = i + 1; j <= n; j++)
{
gasit = false;
if (j%i!=0)
{
for (k=1;nrprim[k]<=(j/2);k++)
if ((i%nrprim[k]==0) && (j%nrprim[k]==0))
{
gasit = true;
break;
}
}
else gasit = true;
if (!gasit)
nr++;
}
nr = nr * 2 + n * 2 - 1;
printf("%d",nr);
return 0;
}