階乗の最上位
1674 ワード
タイトルL:階乗の最高位
時間制限:1 Sec
メモリ制限:128 MB
コミット:18
解決:14
[コミット][ステータス][フォーラム]
タイトルの説明
正の整数nを入力します.出力n!の最高位の数字です.
入力
正の整数nを入力します(nは1000を超えません).
しゅつりょく
出力n!の最高位の数字です.
サンプル入力
1000
サンプル出力
4
注意:1000!lomg long intは限界を超え、doubleもできます
タイトルL:階乗の最高位
時間制限:1 Sec
メモリ制限:128 MB
コミット:18
解決:14
[コミット][ステータス][フォーラム]
タイトルの説明
正の整数nを入力します.出力n!の最高位の数字です.
入力
正の整数nを入力します(nは1000を超えません).
しゅつりょく
出力n!の最高位の数字です.
サンプル入力
1000
サンプル出力
4
注意:1000!lomg long intは限界を超え、doubleもできます
#include<stdio.h>
int
main()
{
double
n,i,sum=1;
scanf
(
"%lf"
,&n);
for
(i=1;i<=n;i++)
{
sum=sum*i*1.0; // ,
while
(sum>=10) // 10, ,sum double float, ,float
sum=sum/10;
}
printf
(
"%d
"
,(
int
)(sum)); // , sum int;
return
0;
}
/**************************************************************
Problem: 1386
User: 141210145
Language: C
Result:
Time:0 ms
Memory:964 kb
****************************************************************/