Re: [問題] 有趣的問題~求無限小數
※ 引述《winterboy209 (鼕鼕)》之銘言:
: 給定一分數,求出此分數以十進位數字表示小數部分循環的數字(第一次循環)
: ex:輸入:1/14
: 輸出714285
: (因為1/14=0.0714285714285714285)
: 以Microsoft 6.0 c++ 撰寫
: 完全不知道如何下手....拜託了謝謝
我用嘴巴幫你寫吧...
先想到的是,怎麼判斷循環...
1. 就給他除, 除了之後找重複出現的字串...?
這樣好像有道理, 可是實際上不對...
例如 1231231234/10000000=123.1231234
你會看到123 123,就以為他是循環...
阿要是後面那個4超過double的精準度...就錯了。
2. 那就自己寫除法。
z=0
x=1
y=14
m=0
z=0.1
x=10
y=14
m=0
z=0.01
x=100
y=14
m=0
--> 除
m= 100-14*7=2 m是餘數, z 不是商, 因為商不重要, 只是讓你知道除到第幾位
z=0.001
x=2
y=14
m=0
所以,只要x < y, 就把x*10, 記錄一下商(因為等一下商就是循環)
然後把x換成除完的餘數...
一直遇到餘數等於原來的被除數, 就是一個循環了
因為, 餘數 = 1的話, 照樣要除以14, 只是小了 10^n 倍而已...
所以當然也會一直循環...
--
2009年 愛滋感染人數統計 異性性行為女 42 異性性行為男 273 同性性行為男 895
台灣2005年起實施孕婦非強迫愛滋篩檢,2008年起強制新生兒篩檢。
每年有約1%的孕婦接受篩檢,每年有大於1%的異性性行為者接受篩檢。
同性戀人口雖然只佔5%-10%,但是因為接受篩檢的比例是異性戀 1%的好幾好幾倍
所以陽性的人口數才會看起來好像比較多 詳情請看ptt.cc L_BoyMeetsGi 版
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.74.186.67
→
05/29 17:27, , 1F
05/29 17:27, 1F
→
05/29 17:39, , 2F
05/29 17:39, 2F
→
05/29 17:41, , 3F
05/29 17:41, 3F
→
05/29 17:56, , 4F
05/29 17:56, 4F
→
05/29 17:57, , 5F
05/29 17:57, 5F
→
05/29 18:02, , 6F
05/29 18:02, 6F
→
05/29 18:03, , 7F
05/29 18:03, 7F
→
05/29 18:03, , 8F
05/29 18:03, 8F
→
05/29 18:03, , 9F
05/29 18:03, 9F
推
05/29 18:04, , 10F
05/29 18:04, 10F
→
05/29 18:04, , 11F
05/29 18:04, 11F
→
05/29 18:05, , 12F
05/29 18:05, 12F
→
05/29 19:44, , 13F
05/29 19:44, 13F
→
05/29 21:45, , 14F
05/29 21:45, 14F
→
05/29 21:45, , 15F
05/29 21:45, 15F
推
05/30 23:44, , 16F
05/30 23:44, 16F
→
05/30 23:45, , 17F
05/30 23:45, 17F
→
05/30 23:46, , 18F
05/30 23:46, 18F
→
05/30 23:47, , 19F
05/30 23:47, 19F
→
05/30 23:47, , 20F
05/30 23:47, 20F
→
05/31 00:15, , 21F
05/31 00:15, 21F
討論串 (同標題文章)