Pagini recente » Cod sursa (job #314830) | Cod sursa (job #2799016) | Cod sursa (job #1657186) | Cod sursa (job #2768372) | Cod sursa (job #2334817)
#include <stdio.h>
#include <math.h>
unsigned int N;
unsigned int C; //counts the irreducible fractions
#define True (1==1)
#define False (1==0)
unsigned char irreducible(unsigned int n, unsigned int m)
{
register unsigned int i;
unsigned int divMax = (unsigned int)sqrt(m);
if (m % n == 0)
{
return False;
}
for (i = 2; i <= divMax; ++i)
{
if (n % i == 0 && m % i == 0)
{
return False;
}
}
return True;
}
int main(void)
{
register unsigned int i, j;
FILE * fp;
C = 0;
//read input
fp = fopen("fractii.in", "r");
i = fscanf(fp, "%d", &N);
fclose(fp);
for (i = 2; i <= N; ++i)
{
for (j = i + 1; j <= N; ++j)
{
if (irreducible(i, j))
{
//printf("irreductible %d/%d\n", i, j);
++C;
}
}
}
C = C * 2;
C += N + N - 1;
//write result
fp = fopen("fractii.out", "w");
fprintf(fp, "%d", C);
fclose(fp);
return 0;
}