Есть ли простой способ проверить, равны ли приблизительно 2 числа? - PullRequest
0 голосов
/ 30 июня 2018

В LUA, есть ли способ проверить, равны ли они приблизительно?

Ответы [ 2 ]

0 голосов
/ 30 июня 2018

Вы также сравниваете их десятичные представления:

function decimal(x)
  return string.format("%.3f",x)
end

print(decimal(x)==decimal(y))
0 голосов
/ 30 июня 2018

Просто установите пороговое значение. Если разница между двумя значениями меньше порога, считайте их равными:

a = 1.23456789
b = 1.23456777

threshold = 0.000001

diff = math.abs(a - b) -- Absolute value of difference
print(diff < threshold) -- True if difference is less than threshold

Выход:

true
...