歷屆試題 PREV 52 小數第n位

2021-09-16 13:03:34 字數 1107 閱讀 5982

問題描述

我們知道,整數做除法時,有時得到有限小數,有時得到無限迴圈小數。

如果我們把有限小數的末尾加上無限多個0,它們就有了統一的形式。

本題的任務是:在上面的約定下,求整數除法小數點後的第n位開始的3位數。

輸入格式

一行三個整數:a b n,用空格分開。a是被除數,b是除數,n是所求的小數後位置(0輸出格式

一行3位數字,表示:a除以b,小數後第n位開始的3位數字。

樣例輸入

1 8 1

樣例輸出

樣例輸入

1 8 3

樣例輸出

樣例輸入

282866 999000 6

樣例輸出

介紹一下幾種解法:

1.模擬除法,得到第n-n+2的餘數

#include using namespace std;

int main()

}return 0;

}

有個小小的優化:

#include #include using namespace std;

int main()

/* 再1位1位的去求 */

for(int i = 0; i < n + 2; i++)

}return 0;

}

事實上,優化後的**成功過了評測,未優化的過了80%。

本題運用:

歷屆試題52 小數第n位

我們知道,整數做除法時,有時得到有限小數,有時得到無限迴圈小數。如果我們把有限小數的末尾加上無限多個0,它們就有了統一的形式。在上面的約定下,求整數除法小數點後的第n位開始的3位數。一行三個整數 a b n,用空格分開。a是被除數,b是除數,n是所求的小數後位置 0一行3位數字,表示 a除以b,小數...

歷屆試題 小數第n位

問題描述 我們知道,整數做除法時,有時得到有限小數,有時得到無限迴圈小數。如果我們把有限小數的末尾加上無限多個0,它們就有了統一的形式。本題的任務是 在上面的約定下,求整數除法小數點後的第n位開始的3位數。輸入格式 一行三個整數 a b n,用空格分開。a是被除數,b是除數,n是所求的小數後位置 0...

歷屆試題 小數第n位

問題描述 我們知道,整數做除法時,有時得到有限小數,有時得到無限迴圈小數。如果我們把有限小數的末尾加上無限多個0,它們就有了統一的形式。本題的任務是 在上面的約定下,求整數除法小數點後的第n位開始的3位數。輸入格式 一行三個整數 a b n,用空格分開。a是被除數,b是除數,n是所求的小數後位置 0...