Pagini recente » Cod sursa (job #605517) | Cod sursa (job #2718527) | Cod sursa (job #2558970) | Cod sursa (job #155304) | Cod sursa (job #1729900)
#include <stdio.h>
#include <stdlib.h>
int phi[1000000];
void euler(int n)
{
int i,j;
for (i=1;i<=n;i++)
phi[i]=i-1;
for (i=2; i<=n; i++)
for (j=2*i; j<=n; j+=i)
phi[j]-=phi[i];
}
int main()
{
FILE *pf,*pg;
pf=fopen("fractii.in.txt","r");
if (pf==NULL)
{
printf("Nu s-a putut deschide fisierul!");
exit(1);
}
pg=fopen("fractii.out","w");
if (pg==NULL)
{
printf("Nu s-a putut crea fisierul!");
exit(2);
}
unsigned int n;
fscanf(pf,"%d",&n);
euler(n);
int i;
for (i=1; i<=n; i++)
phi[n+1]+=phi[i];
printf("%d",2*phi[n+1]+1);
return 0;
}