Pagini recente » Cod sursa (job #581838) | Cod sursa (job #2126347) | Cod sursa (job #89778) | Cod sursa (job #758923) | Cod sursa (job #1210991)
#include <fstream>
using namespace std;
int factorial(int p)
{
if (p < 0)
return -1;
else if (p == 0)
return 1;
int n = 5, aux, nr = 0;
bool multipluZece = false;
while (1)
{
aux = n;
if (multipluZece == true)
{
while (aux % 10 == 0)
{
nr ++;
aux /= 10;
}
multipluZece = false;
}
else
{
while (aux % 5 == 0)
{
nr ++;
aux /= 5;
}
multipluZece = true;
}
if (nr > p)
return -1;
else if (nr == p)
return n;
n += 5;
}
}
int main(int argc, char** argv)
{
int p;
ifstream in("fact.in");
ofstream out("fact.out");
in >> p;
out << factorial(p);
in.close();
out.close();
return 0;
}