演算法競賽(劉汝佳著)課後習題3 8迴圈小數詳解

2021-10-04 01:42:09 字數 709 閱讀 6339

在一開始接觸到這一題的時候,和大多數人一樣,一臉蒙蔽;這種要涉及到數字計算的題目如果沒有一定的經驗,一般都是無從下手的。

我去baidu了一下,看到了一句話,秒懂。

大家可以自己去拿兩個除不盡的數去列一下豎式,就會發現,每一次除以除數的都是除剩下的餘數,然後乘以10,再一次除以除數,也就是說如果哪一次餘數相同了,那後面的書必然和前面的數構成乙個迴圈。

下面是我自己寫的c語言**(覺得c語言簡潔易懂,就沒用c++)

#include

intmain()

;//這個是要輸出的迴圈的小數部分;

res[0]

=(temp*10)

/b;while

((x*10)

%b!=temp)

printf

("%d\n"

,n);

int i;

printf

("%d.("

,a/b)

;for

(i=0

;i)printf

("%d"

,res[i]);

printf

(")");

return0;

}

這是執行結果,和給出的例項相符。

劉汝佳《演算法競賽入門經典》索引筆記

2015年4月30日 acm學習技巧 14 浮點數陷阱 18 include 22 fopen input.txt r stdin 25 ifdef 26 lld 29 大陣列在main外面宣告 34 memset a,0,sizeof a 35 count 濫用 40 linux換行符問題 41 ...

演算法競賽入門經典(劉汝佳) 習題2 4子串行的和

樣例輸入 2 465536 655360 0 0樣例輸出 case 1 0.42361 case 2 0.00001 分析 輸出保留5位小數 輸入包含多組資料 這意味著資料是成批的,是一堆放在一起的,需要自己確定那幾個資料是本次需要的 結束標記 n m 0,表示n和m中任意乙個都不為零 n6本題有陷...

演算法競賽入門經典 劉汝佳 第七章暴力

0 1 增量構造法 include include include include using namespace std int n,t 100 ans 100 void solve int cur,int tpre int main return 0 2 位向量法vis i 1表示選中t i 這...