Cod sursa(job #15003)

Utilizator OXyeBadragan Silviu OXye Data 10 februarie 2007 15:30:15
Problema Fractii Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<stdio.h>
int main()
{
	int k,i,j,n1,n2,n,nr=1;
	FILE *f;
	f=fopen("fractii.in","r");
	fscanf(f,"%d",&n);
	fclose(f);
	for(i=2;i<=n;i++)
	{
		n1=1;
		n2=1;
		k=i;
		if(!(k%2)) 
		{
			while(!(k%2))
			{
				k/=2;
			} 
			n2*=2;
		}
		for(j=3;j<=i;j+=2)
		{
			if(!(k%j))
			{
				while(!(k%j))
				{
					k/=j;
				}
				n1*=(j-1);
				n2*=j;
			}
		}
		nr+=((i*n1/n2)*2);
	}
	f=fopen("fractii.out","w");
	fprintf(f,"%d",nr);
	fclose(f);
	return 0;
}