Pagini recente » Cod sursa (job #2373598) | Cod sursa (job #2611570) | Cod sursa (job #1681295) | Cod sursa (job #1932972) | Cod sursa (job #735124)
Cod sursa(job #735124)
#include<stdio.h>
#define N 1000000
#define M 100000000
struct fr{
int numarator;
int numitor;
};
struct fr frac[N];
FILE *fin=fopen("fractii.in", "r");
FILE *fout=fopen("fractii.out", "w");
int n,i,j,nr,x,k,OK;
float v[M],aux;
int cmmdc(int a, int b){
while (a != b) {
if (a > b)
a -= b;
else
b -= a;
}
return a;
}
int main()
{
fscanf(fin, "%d", &n);
nr=n;
k=1;
for (i=1; i<=n; i++)
{
for (j=1; j<=n; j++)
{
frac[j].numarator=i;
frac[j].numitor=j;
/*v[k]=(float)frac[j].numarator/frac[j].numitor;
OK=1;
for (x=0; x<(k/2); x++)
{
aux=(float)frac[j].numarator/frac[j].numitor;
if(aux==v[x])
OK=0;
}
k++;
*/
aux=cmmdc(frac[j].numarator, frac[j].numitor);
if ((frac[j].numarator%2!=0 || frac[j].numitor%2!=0) && frac[j].numarator%frac[j].numitor!=0 && aux==1)
{
nr++;
//fprintf(fout,"%d/%d\n", frac[j].numarator, frac[j].numitor);
}
}
}
fprintf(fout,"%d", nr);
fclose(fin);
fclose(fout);
return 0;
}