Cod sursa(job #2720349)

Utilizator pasqualePascale Radu-Ioan pasquale Data 10 martie 2021 19:12:14
Problema Factorial Scor 35
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <stdio.h>

int factorial(int p);

int main(){
    int p;
    FILE *f;
    f=fopen("fact.in", "r");
    fscanf(f, "%d", &p);
    fclose(f);
    f=fopen("fact.out", "w");
    int rez=factorial(p);
    fprintf(f, "%d", rez);
    fclose(f);
    return 0;
}

int factorial(int p){
    int nr=0, n=0, aux;
    if(p==0){
        return 1;
    }
    if(p<0 || p>100000000){
        return -1;
    }
    while(n!=p){
        aux = nr;
        while((aux%5 == 0) && (aux>0)){
            aux = aux/5;
            n++;
            if(n == p){
                return nr;
            }
        }
        nr=nr+5;
    }
    return nr;
}