Pagini recente » Cod sursa (job #2067650) | Cod sursa (job #3203022) | Cod sursa (job #864101) | Cod sursa (job #577245) | Cod sursa (job #195820)
Cod sursa(job #195820)
#include <stdio.h>
/* Return the number of coprime numbers < n. */
int coprimes(int n) {
int result = 1, d = 2;
while (n > 1) {
int factor = 1;
while (n % d == 0) {
factor *= d;
n /= d;
}
if (factor > 1)
result *= factor - factor / d;
if (d != 2)
d += 2;
else
d = 3;
}
return result;
}
int main(void) {
FILE *fin, *fout;
int n, i;
long long result = 0;
fin = fopen("fractii.in", "rt");
fscanf(fin, "%d\n", &n);
fclose(fin);
result = 1;
for (i = 2; i <= n; i++) {
result += 2 * coprimes(i);
}
fout = fopen("fractii.out", "wt");
fprintf(fout, "%lld\n", result);
fclose(fout);
return 0;
}