Cod sursa(job #372110)
| Utilizator | Data | 8 decembrie 2009 20:15:11 | |
|---|---|---|---|
| Problema | Factorial | Scor | 5 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.38 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fi("fact.in");
ofstream fo("fact.out");
long p,n;
int nrcifre(long n){
long k=0;
while(n){
n/=10;
k++;
}
return k;
}
int putere(long n){
long k=1,i;
for(i=1;i<=n;i++) k*=10;
return k;
}
int main(){
fi>>p;
if(p==0) n=1;
if(p>0&&p>=10) n=p*5-(p/(putere(nrcifre(p)-1)))*5;
fo<<n;
}