【造成這個(gè)問題的原因分析】:在計(jì)算機(jī)中,所有的數(shù)都是二進(jìn)制保存,十進(jìn)制的小數(shù)在和二進(jìn)制數(shù)字相互轉(zhuǎn)化的時(shí)候,就會(huì)出現(xiàn)誤差,也就是浮點(diǎn)數(shù)的精確度。由于浮點(diǎn)數(shù)的精確度不可能完全精準(zhǔn),所以出現(xiàn)這樣的情況在所難免。所以會(huì)出現(xiàn)問題的截圖中所示的狀態(tài)。
創(chuàng)新互聯(lián)公司2013年成立,先為城中等服務(wù)建站,城中等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為城中企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
【解決方法】:可以通過將小數(shù)減法變?yōu)檎麛?shù)減法降低誤差。如下圖所示:
我課程中的部分代碼(除沒寫):
def?f_add(a,b):
return?a+b
def?f_mul(a,b):
return?a*b
def?f_sub(a,b):
return?a-b
def?g1(f,a,b):
return?f(a,b)
a,b,c,d?=?1,2,3,4
print?g1(f_sub,?g1(f_mul,?g1(f_add,a,b),?c),?d),??g1(f_mul,?g1(f_add,a,b),?g1(f_sub,c,?d))
對(duì)python感興趣可以到這里了解一下:
study.163.com/course/courseMain.htm?courseId=1000035
import?random
max_n?=?100
i?=?0
while?True:
i?+=?1
#?隨機(jī)運(yùn)算,0+,1-
op?=?random.randint(0,?1)
#?+
if?op?==?0:
x1?=?random.randint(0,?max_n)
x2?=?random.randint(0,?max_n?-?x1)
result?=?x1?+?x2
qst?=?str(x1)?+?"+"?+?str(x2)?+?"="
question?=?[qst,?result]
#?-
elif?op?==?1:
x1?=?random.randint(0,?max_n)
x2?=?random.randint(0,?x1)
result?=?x1?-?x2
qst?=?str(x1)?+?"-"?+?str(x2)?+?"="
question?=?[qst,?result]
x?=?input("第{:2d}題:{}".format(i?+?1,?question[0]))
if?int(x)?==?int(question[1]):
print("回答正確!")
else:
print("回答錯(cuò)誤!{}{}".format(question[0],?question[1]))
def add(a,b):#加法運(yùn)算return a+bdef sub(a,b):#減法運(yùn)算return a-bdef mul(a,b):#乘法運(yùn)算return a*bdef div(a,b=1):#除法運(yùn)算return a/b
名稱欄目:減法函數(shù)python 減法函數(shù)excel
URL分享:http://www.rwnh.cn/article28/dosijjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、用戶體驗(yàn)、品牌網(wǎng)站建設(shè)、網(wǎng)站排名、響應(yīng)式網(wǎng)站、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)