Pagini recente » Cod sursa (job #128288) | Cod sursa (job #1679593) | Cod sursa (job #2900895) | Cod sursa (job #1609478) | Cod sursa (job #580801)
Cod sursa(job #580801)
#include<fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int catecifre(int cifra)
{
int nrc;
while(cifra)
{
cifra = cifra / 10;
nrc++;
}
return nrc;
}
int factorial(int number)
{
int temp;
if(number <= 1)
return 1;
temp = number * factorial(number - 1);
return temp;
}
int main()
{
int p, n = 1, gasit = 0;
fin >> p;
while(gasit == 0)
{
if(catecifre(factorial(n)) == p)//daca cate cifre are n! == p
gasit = 1;
else
n++;
/*if( gasit == 0 && catecifre(factorial(n)) != p && catecifre(factorial(n)) > 100000000 )//daca inca nu am gasit un factorial de n sa aiba p cifre si cifrele factorialului n > pow(10,8) facem break si d = 1;
{
d = 1;
break;
} */
}
fout << n;
return 0;
fin.close();
fout.close();
}