Cod sursa(job #209644)
Utilizator | Muk BurunduK oleg_9370 | Data | 23 septembrie 2008 19:50:54 |
---|---|---|---|
Problema | Fractii | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.89 kb |
#include <iostream>
#include <stdio.h>
long cmmdc(long a,long b){
long m;
while(b!=0){
m=a%b;
a=b;
b=m;
}
return(a);
}
int main()
{
FILE *f;
long p,q,n,d,r,m,a,b;
f=fopen("fractii.in","r");
fscanf(f,"%ld",&n);
fclose(f);
bool t;
r=0;
for(p=1;p<=n;p++){
for(q=1;q<=n;q++){
a=q;b=p;
while(b!=0){
m=a%b;
a=b;
b=m;
}
d=a;
t=false;
if((d!=p)&&(d!=q))r++,t=true;
if((d==1)&&((p==1)||(q==1)))r++,t=true;
if((d!=1)&&(p%d==0)&&(q%d==0)&&(t))r--;
}
}
f=fopen("fractii.out","w");
fprintf(f,"%ld",r);
fclose(f);
return(0);
}