如何判斷乙個分數是否能化成非迴圈小數

2021-08-27 06:24:20 字數 1389 閱讀 2198

①若乙個分數的分子為1,如1/a=x(x為有限位的小數)

則可把x化為分母為10^n,分子為x×10^n的乙個整數,n的取值要看x的小數字是幾位

則x×10^n=10^n/a=2^n·5^n/a,我們可知等式左邊是個整數,所以右邊的分母a定能整除10^n,

即a=2^i·5^j(i,j都大於等於0)時,1/a就為有限小數

反之,若a的因子中還有不是2和5的其他數,則分數1/a為無限迴圈小數

②若是乙個一般的最簡分數b/a,若b/a為有限小數,則可認為是b與1/a的乘積

推斷過程如①,得出a至少整除10^n與b中的乙個,否則b/a不為有限小數

③我覺得無限迴圈小數又分為迴圈節為1的和迴圈節大於1的兩類,如:

迴圈節為1的:0.3333333333......,0.1666666666666666......,0.12344444444......(這裡有的不是從小數點後的第一位開始迴圈的,而是從某一位開始迴圈,我們也把他認為是迴圈節為1)

迴圈節大於1的:0.01010101......,0.142857142857......,0.076923076923......

對於乙個最簡分數b/a,若其為迴圈節為1的無限迴圈小數,則分母a為3或3的整數倍。反之,其迴圈節大於1

④若給你乙個無限迴圈小數0.m......nm......n.......把其化為小數形式,該怎麼化?

其迴圈節為m......n,設其迴圈節內有x位數字

設原數0.m......nm......n.......=y

則y×10^x=m......n.m......n......

上面兩式相減:y(10^x-1)=m......n,即y=m......n/(10^x-1)

即化為分數形式即為以迴圈節為分子,分母為999.....9(9的位數與迴圈節的位數相同)

當然若你想把此分數化為最簡形式,卻不見得是件容易的事

例如1/7=0.142857142857......=142857/999999

**一:如何把輸出乙個數的質因子

public class zhishu 

}if(flag == 0)

} }public static void main(string args)

}

**二:判斷乙個分數能不能轉化成有限小數

public class cycle 

while(up > down)

for(int i=2 ; i<=up ; i++)

} while(down!=1)else if(down%5 == 0)else

} return true; }

public static void main(string args)

}

判斷乙個整數是否能被11整除

如果乙個整數在整型範圍內,直接用求餘符號就能搞定,但是如果這個整數比較大就要另尋他路了。有一種演算法叫做 奇偶位差法 意思就是在奇數字上的數字和與偶數字上的數字和做差,如果這個差的絕對值能被11整除,那麼這個數字就可以被11整除。include include includeint main if ...

python判斷乙個數是否能被另乙個整數整除

判斷乙個數是否能被另乙個整數整除是乙個挺簡單的問題,一般乙個模運算就可以搞定了,懶惰的曉萌還是不想自己做,於是找到你幫他寫 你就幫幫他吧。輸入格式 輸入包括兩個由空格分開的整數m 和 n 1 m,n 500 輸出格式 輸出包括一行,如果 m 可以被 n 整除就輸出yes,否則輸出no 結果大小寫敏感...

網路 乙個程序是否能擁有多個埠

感興趣可以加qq群85486140,大家一起交流相互學習下!埠其實就是隊,作業系統為各個程序分配了不同的隊,資料報按照目的埠被推入相應的隊中,等待被程序取用,在極特殊的情況下,這個隊也是有可能溢位的,不過作業系統允許各程序指定和調整自己的隊的大小。實踐證明乙個程序可以擁有多個埠 server端 片段...