Cod sursa(job #1390014)

Utilizator enacheionutEnache Ionut enacheionut Data 16 martie 2015 19:46:48
Problema Factorial Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include<iostream>
#include<fstream>

using namespace std;

long factorial(long nr );

int main()
{
    long  p,n=1,fact,i,aux=1;
    int ok=0;

    ifstream f("fact.in");
    f>>p;
    f.close();

    if( p<=0 && p>=1e+8 ){
        cout<<"Numarul citit din fisier nu se incadreaza in limitele acceptate!"<<endl;
        return 0;
    }

    for( i=1;i<=p;i++ ){
        aux=aux*10;
    }

    while( ok == 0 ){

        if( factorial(n) %aux == 0 ){
            ok=1;
        }
        else{
            if( n==1 ){
                n=n+4;
            }
            else{
                n=n+5;
            }
        }
    }
   // cout<<n<<" "<<factorial(n)<<endl;

    ofstream g("fact.out");
    g<<n;
    f.close();

    return 0;
}

long factorial(long nr )
{
    int i;
    long fact=1;
    for( i=1;i<=nr;i++ ){
        fact=fact*i;
    }
    return fact;
}