fork(1) download
  1.  
  2. local function isNaN1( v ) return type( v ) == "number" and v ~= v end
  3. local function isNaN2( v ) return tostring(v) == tostring(0/0) end
  4. local function isNaN3( v ) return v~=v end
  5.  
  6. local tbl = {1/0, 0/0, -(1/0), -(0/0), math.huge, -math.huge}
  7.  
  8. for _,n in ipairs(tbl) do
  9. print(isNaN1(n), isNaN2(n), isNaN3(n), n)
  10. end
Success #stdin #stdout 0s 2832KB
stdin
Standard input is empty
stdout
false	false	false	inf
true	true	true	-nan
false	false	false	-inf
true	false	true	nan
false	false	false	inf
false	false	false	-inf