Pagini recente » Cod sursa (job #657789) | Cod sursa (job #894736) | Cod sursa (job #814302) | Cod sursa (job #720893) | Cod sursa (job #889416)
Cod sursa(job #889416)
#include <fstream>
#include <math.h>
//#include <iostream>
using namespace std;
double zero(double n){
double z,k;
//double kmax;
z=0;
//kmax=floor((log10(n)/log10(5)));
for(k=1; k<=n; k++)
z+=floor(n/pow(5,k));
return z;
}
int main() {
double p,n,rez;
ifstream f("fact.in");
ofstream g("fact.out");
f>>p;
//cout<<"Nr de zerouri pt care se va afisa factorialul: ";
//cin>>p;
rez=-1;
if (p>0) {
n=4*p;
while (n<=5*p) {
if (zero(n)<p) {
n++;
}
else
if (zero(n)==p){
rez=n;
g<<rez<<endl;
//cout<<"Factorialul dorit: "<<rez<<endl;
break;
}
else {
g<<rez<<endl;
//cout<<rez<<" : nu exista solutie"<<endl;
break;
}
}
}
else
g<<1<<endl;
//cout<<1<<endl;
f.close();
g.close();
return 0;
}