0
A
回答
1
Inf = Infinity。你得到這個是因爲dx是0,因此你除以0.這可能是有效的 - 例如,一條垂直線。
在計算斜率之前檢查以確保dx具有所需的值。
5
當您除以零(或足夠小的數字)時,無法以浮點表示法表示結果。在這種情況下,你會得到一個無窮大(+ Inf或-Inf)。例如,如果您已經擁有可以用IEEE754雙打表示的最大數字,並將其除以0.1(即乘以10),您將獲得+ Inf。
IEEE754將一些位模式分配給特殊值,如+/-無窮大和NaN(不是數字)。
我很久以前就不再試圖在電腦上用線條表示(梯度,y-相交)對(因爲你可以用腦中的無窮計算,所以在紙上就可以)。通過簡單地將線條表示爲(x1,y1,x2,y2)4元組,您可以避免所有無窮無盡的麻煩 - 如果以這種方式表示線段,您會發現對所有漸變效果都很好的算法。
否則,在計算梯度時,您總是需要對導致溢出的近垂直線進行特殊處理。
相關問題
- 1. 雙重分割C
- 2. 雙指針分割錯誤
- 3. 雙輸出程序
- 4. 將雙分割成多個部分
- 5. 在asp.net C#雙引號的JavaScript輸出
- 6. 在java中由雙點「..」分割字符串
- 7. 圖雙分區 - 標準化的切割
- 8. 圓形,雙鏈表 - 分割錯誤
- 9. 錯誤的雙輸出輸出
- 10. 長雙的負輸出
- 11. PHP不顯示雙輸出
- 12. 用雙引號PHP輸出
- 13. PHP fputcsv輸出雙記錄
- 14. C + + int或雙輸入
- 15. 雙組由
- 16. C#雙精度分割時丟失精度
- 17. 使用C中的雙指針進行分割故障問題
- 18. C++雙重分派問題
- 19. 分裂兩個雙,C#
- 20. 雙重分配在C++ 11
- 21. 找出原因「雙自由或損壞(出):」用C
- 22. C++雙
- 23. 雙嵌套路由
- 24. 由雙管分隔的兩個回調?
- 25. 奇數行爲使用雙打,我得到分割雙打時,在Java中
- 26. C++通過長長指針中斷輸出雙位輸入
- 27. 雙值輸入
- 28. 混亂與C C雙維數組輸出
- 29. 雙分組
- 30. 拆分雙值?
實際結果可能是INF,爲什麼不呢?這是一個合法的數字。 – 2009-12-22 10:44:25
如果它是一條垂直線,dy = 1(例如)和dx = 0,實際結果應該是什麼? – 2009-12-22 16:31:37
這不是一個零除? 'dy = 1; dx = 0; DY/DX;' – 2010-06-06 14:39:25