[問題] 相減不等於零已回收

看板MATLAB作者 (.人.)時間16年前 (2009/05/07 17:03), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
碰到了奇怪難以解決的問題 問了幾個人都不知道怎麼回事 請板上強者幫幫忙解決一下 nowtime=1 tbu = gamrnd(1,3.6,1,1); temp=floor(10*abs(tbu))'; number=10*abs(tbu)'; Com=number-temp; if(Com>=0.5) time=ceil(10*abs(tbu))'/10; else time=floor(10*abs(tbu))'/10; end burst_time = time; ontime=nowtime+burst_time; while(nowtime<=100) nowtime=nowtime+0.1 ontime-nowtime end 照理說倒數第二行 ontime-nowtime 輸出結果應該是等於 0 可是一直跑不出來........ 不知道是怎麼回事 拜託強者幫幫忙..... orz -- 再示範一次標題地雷殺人法: 下邳城曹操鏖兵 白門樓呂布殞命 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.129.77.5

05/07 17:04, , 1F
浮點數誤差,請用一個極小的數來判斷相減是否可視為零
05/07 17:04, 1F
文章代碼(AID): #1A0gF7sZ (MATLAB)
文章代碼(AID): #1A0gF7sZ (MATLAB)