精華區beta ToS 關於我們 聯絡資訊
前言... 因為一開始聽說傷害破10億時會出問題 所以才玩了一下艾得 結果發現顯示出來的傷害少了一位 ( 請參閱 文章代碼 #1KLAQVPy ) 但是實際拿來計算時又覺得怪怪的 就一個數學背景出身的我 很不能接受這個奇怪的地方 所以才會追究這點 艾得的頭上的數字是 725852736 http://imgur.com/6jbmvuF 打在光地精身上是 108877913 http://imgur.com/ZLuzUIX 讓我們來計算一下 剋屬是1.5倍 725852736 * 1.5 = 1088779104 地精的防=14 1088779104 - 14 = 1088779090 就算最後一位沒有顯示 那也會是108877909 沒道理變成108877913 後來在巴哈看到了這篇文章 http://ppt.cc/HZp8 數字分別是 991206464 148670976 一樣來計算一下 991206464 * 1.5 = 1486809696 1486809696 - 100000 = 1486709696 很明顯的又是後面幾位出了問題 所以 可以知道MH在計算傷害時 用是一般的浮點數(float)在計算 所以才會出現這個誤差 如果改成倍精度浮點數(double float) 可能會拖到程式的一些效率 SORRY 不懂的話可以去翻一下計概的書就知道了(咦 因為奧丁的倍率沒有一個精確的公式 所以有興趣研究的朋友 可以改用其他2倍攻的卡 ( 或者等我有空時再來測一下 ) 只要傷害達8位數時 應該就會出現誤差了 -- 主角11111機獸11111機龍11111龍使22211封神11111奸佞1111111 1111o1 東獸11222西獸11112妖蛋11111千年111oo幻境11111柱神111o1oo 131112 防龍ooooo希臘11111異界11111遊鴨111oo機偶o1111惡棍o11oo 111111 妹子11111北歐11111巫女11111狂魔11111英雄12112機伴11 迪1121111 遊俠11111埃及11111傭兵o11o1聖誕o11 精獸 魔像 o 111o11111 巨像oooo1西遊11111不死11111魔境1oooo式神1111111111111111 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.65.46 ※ 文章網址: http://www.ptt.cc/bbs/ToS/M.1414848899.A.199.html
slent67: 我竟然看的懂XDD 11/01 21:35
shamus0309: 這扯到了資訊科技的範圍XDD 11/01 21:36
Kare112233: 我建議你刪文 然後用回文的方式 不然有些人會不懂 11/01 21:36
ATTwo: 數學給推 11/01 21:36
blueocean292: 完全看不懂..... 11/01 21:37
KiSeigi: 推玩神魔學數學 11/01 21:37
longmok2500: float...最近常常看到 11/01 21:37
evilraistlin: 不明覺厲... 11/01 21:37
creamdancer: 浮點運算規則比較不是常人會接觸的東西XDDD 11/01 21:38
Woyun99: 數學之塔無誤~ 11/01 21:40
zinstar: 長知識了! 11/01 21:41
pipiann: 玩TOS長智慧 11/01 21:41
qwe20: 果然是C語言達人大滴勾 11/01 21:43
jefftie2000: 完全看不懂XD 11/01 21:45
bertrend: 之前也有人說自己是數學背景的 請問是數博嗎 還是數 11/01 21:45
bertrend: 碩? 11/01 21:45
※ 編輯: dadadiiii (61.231.65.46), 11/01/2014 21:45:37
zzxcasd: 跟數學什麼關係 明明就是計概 鄉民就是逼哀 11/01 21:46
po5980: 這跟數學沒關係阿= = 11/01 21:47
allen65535: 計概中的數學就不是數學嗎 11/01 21:50
fishg1216: 快推文要不然人家會以為我看不懂 11/01 21:50
CenaSucks: 不好意思我太嫩,傷害到7位數就上不去了 11/01 21:51
st940116: 樓樓上也太好笑了~~~~~我是真的看不懂xDDDDDDDD 11/01 21:54
oToToT: Java雙精度浮點數範圍這麼小!? 11/01 21:57
oToToT: 不喜歡java不知道 11/01 21:57
dd830611: 可惡我明明學過 只好推文裝懂惹 11/01 21:59
evanade: oT你都沒看文喔,他說因為不是用雙精度所以才不準 = = 11/01 21:59
yzkeroro: CS之塔 11/01 22:02
TheOneisNEO: 有稍微認真念的話 數學系畢業應該就可以算數學背景了 11/01 22:04
TheOneisNEO: 但我覺得這部分講的應該比較算CS 跟MATH關聯小 11/01 22:05
spellcaster: 沒注意過數字有錯欸 還好看得懂 11/01 22:06
TheOneisNEO: 有板友不懂的話這邊簡單解釋一下 就是儲存這些數值的 11/01 22:07
TheOneisNEO: 變數儲存空間不夠(數值位數太多)導致運算時產生差 11/01 22:08
TheOneisNEO: 異 11/01 22:09
romron: 手機遊戲應該是用java寫的~ 不過概念一樣 11/01 22:09
p85173: 推~~不過印象中直接(long)double好像就可以了? 11/01 22:10
lapras: 只是算幾個double不至於拖到效率吧....除非同時算幾千個 11/01 22:12
dadadiiii: 快叫MH改一下程式 11/01 22:13
Kare112233: 說實話 10億 跟 1億 的用意在哪XDDD 11/01 22:16
oToToT: 沒仔細看文sorry,看到double float就想應該是寫MH有用 11/01 22:19
tease0623: 看得懂給推XD 11/01 22:19
youngmoa: 不是數學阿 數值分析也會提到 就是一種演算法 11/01 22:20
harry901: 太神了 不推不行 11/01 22:23
x7791175: YA 我看得懂耶 11/01 22:23
moho831: 封神的生化犬是否直接破防 11/01 22:25
zzxcasd: 對某人來說 他硬碟的A片也是數學 11/01 22:26
talrasha: 演算法很重要 D3>POE 遊戲流暢度有差 11/01 22:27
harry901: 連這也可以酸 果然只會出一張嘴 11/01 22:33
rubyli5050: printf("推推\n"); 11/01 22:37
oToToT: print "推推\n" 11/01 22:41
xiaolu5566: System.out.println("快推,免得被酸"); 11/01 22:45
dadadiiii: 其實上一篇也是程式沒寫好 只印了9位數字出來 11/01 22:49
lover790222: 當然換成雙精確會影響阿~記憶體空間需要再多 11/01 22:56
steam: cout << "可以幫我解TLE嗎,剛寫的程式效率太差" 11/01 23:01
oToToT: raw_input("伊登臭臭(Y/N) : ") 11/01 23:04
channing3107: NSLog(@"推推"); 11/01 23:04
lapras: float 4 byte,double 8 byte,除非你是要海量的double 11/01 23:08
louisalflame: printf("推推\n"); 11/01 23:12
markk90355: 同為資工人看得懂給推 11/01 23:22
ht6401: 我看得懂這篇文章...真的病了 11/01 23:22
phpMyAdmin: alert("推推"); 11/01 23:26
Kare112233: 此篇將收錄喔 11/01 23:26