Cod sursa(job #162372)

Utilizator agabrieiulianAntoniu Gabriel Iulian agabrieiulian Data 19 martie 2008 22:42:30
Problema Fractii Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream.h>
#include <math.h>

long int cmmdc(long int a, long int b)
{  long int aux=0;

	 while (a!=b && aux!=1)
	 if (a<b) { aux=b-a;
				b=b-a;
						}
			else  { aux=a-b;
							a=a-b;
						}

	 return aux;
}

long int prim(long int n)
{
	long int p=0;
	int prm=1;
	for(p=2;p<=sqrt(n);p++)
	 if(n%p==0) {prm=0; break;}

	return prm;

}

int main(void)
{
	long int n,i,j,count=0,c=0;

	ifstream date_intrare("fractii.in");
	ofstream date_iesire("fractii.out");

	date_intrare>>n;
	//n=10;
	count=n+n-1;
	for(i=2;i<=n;i++)
	 for(j=2;j<i;j++)
		{
			if(prim(i)==1) {c=c+i-2; i++;}
			 else
			 {
				 if(i%j!=0)
					 if(cmmdc(i,j)==1)c++;
			 }
		}

	count=count+ 2*c;

	date_iesire<<count;

	date_intrare.close();
	date_iesire.close();
	return 0;
}