我已經編寫了一個程序,用於在計算後打印一個矩陣,並且我得到了所有元素的輸出爲nan
。只要矩陣的第一個元素變成nan
以便理解問題,我想打破for
循環。我怎樣才能做到這一點?在終端中,我打印了包含nan
的矩陣a
作爲所有元素並鍵入a[1][1]=="nan"
和a[{{1},{1}}]=="nan"
,兩者都返回false
。他們爲什麼不返回false
,我應該用什麼聲明呢?Lua檢查數值/值是否爲
2
A
回答
6
您的測試失敗,因爲您正在比較數字與字符串"nan"
。
如果您確信這是一個數字,最簡單的方法是:
if a[1][1] ~= a[1][1] then
因爲根據IEEE 754,nan
值被認爲不等於任何值,包括它自己。
0
嘗試這種情況:
for x = 1, x2 do -- x2 depends on how big you matrix is.
for y = 1, y2 do -- y2 the same as x2
-- some code depending on how your program works
if a[x][y] == nan then
print("X:" .. x .. ", Y:" .. y)
break
end
end
end
PS:(楠==楠)爲真
+0
您的回答不正確。變量「nan」沒有在Lua中定義,因此它將評估爲(nil)。 (nil == nil)確實如此。但是,(0/0 == 0/0)是錯誤的! – joshuahhh
相關問題
- 1. 檢查數組值是否爲數字
- 2. 檢查值是否爲
- 3. 如何檢查Lua中的值是否爲空?
- 4. 檢查數值是否爲空
- 5. C++/cli檢查數值是否爲
- 6. 檢查值是否爲10的倍數
- 7. jquery檢查值是否爲數字
- 8. 如何檢查值是否爲數字?
- 9. 檢查double值是否爲整數Swift
- 10. 檢查值是否爲數字
- 11. 檢查兩個值是否爲負數
- 12. 檢查數值是否爲R
- 13. 檢查數組值是否爲空
- 14. 檢查值是否爲整數(Objective-C)
- 15. 如何檢查值是否是數字
- 16. Lua-測試兩個值是否爲真
- 17. 如何檢查Lua中的兩個值是否基本相等?
- 18. Lua表檢查是否有任何變量匹配任何值
- 19. Numpy:檢查值是否爲NaT
- 20. 檢查對象屬性值是否爲
- 21. 如何檢查值是否爲1.#INF0000?
- 22. 檢查是否GET值爲null
- 23. 檢查JavaScript值是否爲十進制
- 24. 檢查值select2是否爲空
- 25. 檢查是否爲datetimepicker輸入值?
- 26. JsRender - 檢查嵌套值是否爲空
- 27. 如何檢查DataReader值是否爲空?
- 28. Java檢查布爾值是否爲空
- 29. 檢查是否JSON值爲空
- 30. 檢查是否美麗soup.find_all值爲空
'本地函數isNaN(v)的返回類型(V)== 「數量」 和v〜= V端' – siffiejoe
'本地函數isNaN(v)return tostring(v)== tostring(0/0)end' –
@EgorSkriptunoff - (0/0)會產生一個不同的字符串,即使它仍然是nan,因此返回false,即使true應該返回。 https://ideone.com/YoOljy – Rochet2