Cod sursa(job #177836)

Utilizator aigoiaAlexandru Goia aigoia Data 13 aprilie 2008 17:34:16
Problema Fractii Scor 10
Compilator c Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <stdio.h>

int fractii(int n);
int prime(int n);
int cmmdc(int a, int b);

int main()
    {
    FILE *input, *output;
    remove("fractii.out");
    input = fopen("fractii.in", "r");
    output = fopen("fractii.out", "a");
    int m;
    fscanf(input, "%d", &m);
    printf("%d\n", m);
    fprintf(output,"%d", fractii(m));
    return 0;
    }

int cmmdc(int a, int b)
    {
    int r;
    r = a % b;
    if (r != 0)
	return cmmdc(b, r);
	else return b;
    }

int fractii(int n)
    {
    if (n>1)
        return fractii(n-1) + 2 * prime(n);
        else return 1;
    }
    
int prime(int n)
    {
    int k, r=0;
    for(k=1;k<=n;k++)
	if( cmmdc(k,n) == 1) ++r;
    return r;
    }