原PO是C++新手
最近老師出了個問題
是要判別溢位的
ab相乘結果若溢位
顯示的結果就會是錯的
EX: 2147483647*2 會等於 4
目的要我寫程式在發生溢位之前先預知可能會發生溢位
那有什麼方法可以預知嗎?
謝謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.223.194.219
推
04/03 22:30, , 1F
04/03 22:30, 1F
※ 編輯: maydayai 來自: 61.223.194.219 (04/03 22:32)
推
04/03 22:32, , 2F
04/03 22:32, 2F
→
04/03 22:41, , 3F
04/03 22:41, 3F
推
04/03 22:42, , 4F
04/03 22:42, 4F
→
04/03 22:42, , 5F
04/03 22:42, 5F
→
04/03 22:57, , 6F
04/03 22:57, 6F
推
04/03 23:03, , 7F
04/03 23:03, 7F
對了 他要我們不用*去寫相乘
而是用連加去寫相乘 不曉得這資訊有沒有幫助
有個想法是當快要加到溢位的時候
最接近的那個值跟溢位值相差小於下一次要加上的值
那就停止
(EX:29是溢位值 3*11=33溢位 那當3加9次變成27 29-27>3就停止)
不過以原PO的程度還不曉得該怎麼寫
※ 編輯: maydayai 來自: 61.223.194.219 (04/03 23:38)
※ 編輯: maydayai 來自: 61.223.194.219 (04/03 23:41)
推
04/03 23:46, , 8F
04/03 23:46, 8F
→
04/03 23:47, , 9F
04/03 23:47, 9F
→
04/03 23:51, , 10F
04/03 23:51, 10F
推
04/03 23:54, , 11F
04/03 23:54, 11F
→
04/03 23:54, , 12F
04/03 23:54, 12F
→
04/03 23:59, , 13F
04/03 23:59, 13F
→
04/04 00:00, , 14F
04/04 00:00, 14F
推
04/04 17:42, , 15F
04/04 17:42, 15F
推
04/04 18:33, , 16F
04/04 18:33, 16F
→
04/04 20:04, , 17F
04/04 20:04, 17F
推
04/04 21:37, , 18F
04/04 21:37, 18F
→
04/04 21:39, , 19F
04/04 21:39, 19F
→
04/04 21:41, , 20F
04/04 21:41, 20F
→
04/04 21:42, , 21F
04/04 21:42, 21F
→
04/04 23:06, , 22F
04/04 23:06, 22F
討論串 (同標題文章)