python再计算无限循环小数的循环节
生活随笔
收集整理的這篇文章主要介紹了
python再计算无限循环小数的循环节
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
循環節:
如果無限小數的小數點后,從某一位起向右進行到某一位止的一節數字循環出現,首尾銜接,稱這種小數為循環小數,這一節數字稱為循環節。
#尋找1000以內的n,使得1/n的循環小數節長度最長
前提是所有的數必須是質數(即素數)循環節的長度是使分母P整除10^k-1的最小k值。例如:9可以整除10^1-1,所以當分母為9時,循環節是1位。7可以整除10^6-1=999999,所以當分母為7時,循環節是6位。
#判斷1/n的小數循環節點長度Length(n):L=1while(True):if (10**L-1)%n==0:breakL+=1return L a=[] for i in range(2,101):if is_prime(i) and i!=2 and i!=5:#素數包括2與5a.append([Length(i),i]) print(a) ##[[1, 3], [6, 7], [2, 11], [6, 13], [16, 17], [18, 19], [22, 23], [28, 29], [15, 31], [3, 37], [5, 41], [21, 43], [46, 47], [13, 53], [58, 59], [60, 61], [33, 67], [35, 71], [8, 73], [13, 79], [41, 83], [44, 89], [96, 97]]第一次知道利用上面的算法來求循環節,真是長見識了。繼續努力。
總結
以上是生活随笔為你收集整理的python再计算无限循环小数的循环节的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何将mp4视频格式转换成flv视频
- 下一篇: 2020届实习招商银行信用卡笔试题(IT