大家都知道,小算盤的小數運算只能算出小數點後三十幾位
但好奇的桑葉想知道更精準的小數值
請你幫可憐的桑葉做出可以算出精準的小數運算的程式
輸入說明 :
每次輸入有三個正整數 a, b, N
1<= a , b <= 2147483647
1 <= N <= 10000
( 輸入不會超過1000筆 )
輸出說明 :
請輸出 a / b 的小數運算結果
精準到小數點後N位
第N位以後請無條件捨去
範例輸入 :
18467 41 10
26500 6334 10
15724 19169 10
10 5 3
範例輸出 :
450.4146341463
4.1837701294
0.8202827481
2.000
提示 :
背景知識: 一維陣列
改編自 a240: 第一題:1 / 17 小數第 n 位
程式碼 :
#include<stdio.h>
int main()
{
int a,b,i,n;
char s[10001];
while(scanf("%d%d%d",&a,&b,&n)==3)
{
printf("%d",a/b);
a = a % b;
if(n > 0)
{
for(i=0; i<n; i++)
{
a = a * 10;
s[i] = a / b + '0';
a = a % b;
}
s[i] = '\0';
printf(".%s",s);
}
printf("\n");
}
return 0;
}
http://zerojudge.tw/ShowProblem?problemid=a248
沒有留言:
張貼留言