Pagini recente » Cod sursa (job #717407) | Cod sursa (job #2091476) | Cod sursa (job #2217494) | Cod sursa (job #1814383) | Cod sursa (job #213877)
Cod sursa(job #213877)
#include <fstream.h>
#include <math.h>
unsigned long p;
unsigned long log5( unsigned long k );
int main()
{
unsigned long i, cinci = 0;
ifstream fin("fact.in");
fin >> p;
fin.close();
for( i = 0; cinci < p - 1 ; i = i + 5 )
cinci += log5( i );
ofstream fout( "fact.out");
if( p == 0 )
fout << 1;
else
fout << i;
fout.close();
return 0;
}
unsigned long log5( unsigned long k )
{
unsigned long rez = 0;
if( k >= 5 && k < 25 ) return 1;
if( k >= 25 && k < 125 ) return 2;
if( k >= 125 && k < 625 ) return 3;
if( k >= 625 && k < 3125 ) return 4;
if( k >= 3125 && k < 15625 ) return 5;
while (k % 5 == 0 && k != 0 )
{
rez++;
k /= 5;
}
return rez;
}