Cod sursa(job #299454)
| Utilizator | Data | 6 aprilie 2009 19:43:51 | |
|---|---|---|---|
| Problema | Factorial | Scor | 5 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.73 kb |
#include<stdio.h>
FILE *f,*g;
int main()
{
f=fopen("fact.in","r");
g=fopen("fact.out","w");
long int p,i,aux,j;
int a[50000];
fscanf(f,"%ld",&p);
if(p==0) { i=1; fprintf(g,"%ld",i); }
else if(p<0) {i=-1; fprintf(g,"%ld",i); }
else {
i=0;
aux=p;
while(p!=0)
{
a[i]=p%10;
p=p/10;
i++;
}
for(j=0;j<aux;j++)
{
a[j]=a[i];
i=i-1;
}
for(i=0;i<aux;i++)
{
a[i]=a[i]*5;
if(a[i]>10) { a[i]=a[i]-10; a[i+1]++; }
}
for(j=0;j<aux;j++)
{
fprintf(g,"%d",a[j]);
}
}
return 0;
}
