python3 解决除法中循环小数计算并判断循环体
python3 解決除法中循環(huán)小數(shù)計算并判斷循環(huán)體
#解決分數(shù)變小數(shù),小數(shù)位數(shù)受到計算機位數(shù)限制的問題。任意位小數(shù)除法2019.11.25
r = [] # 放結(jié)果
x = 0
#-------------計算過程-------------------------
def divcal(a,b,c): # 計算主函數(shù) a/b 留c位小數(shù)
a1 = a
print(a1,b,c)
if a1 < b : #小于1,打印0.
a1 = a1 * 10
print(“0.”,end="")
#--------除法過程中遞歸方法找到能運算到數(shù)-----------
def aplus(a1,b): #迭代找到剛好大于除數(shù)到數(shù)字
global x #必須聲明x是全局變量,否則結(jié)果回傳不了
if a1 < b:
a1 = a1 * 10
r.append(0)
aplus(a1,b)
else:
x = a1
return
#---------找循環(huán)節(jié)--------------------------
def findxhj():
for i in range(0,int(len?/2)): #小數(shù)部分起點
for j in range(1,int(len?/2)): #循環(huán)節(jié)長度
str_1 = r[i:i+j]
str_2 = r[i+j:i+2*j]
if str_1 == str_2 :
print(“循環(huán)節(jié):”, end="")
for i in range(0, len(str_1)):
print(str(str_1[i]), end="")
print("-----",len(str_1),“位”)
return
if name == ‘main’:
a = 9 # 被除數(shù)
b = 49 # 除數(shù)
c = 200 # 小數(shù)位數(shù)
divcal(a, b, c)
findxhj()
總結(jié)
以上是生活随笔為你收集整理的python3 解决除法中循环小数计算并判断循环体的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 函数练习,腾讯笔试
- 下一篇: python range 小数_pyth