Интерпретатор Octave оценивает это выражение как ложное:
>> 2/3 + 1/6 == 5/6
ans = 0
причина
>> 2/3 + 1/6 - 5/6
ans = -1.11022302462516e-16
Этого можно избежать с помощью функции rat
(или rats
) или приведениязначения, но в полученном выражении отсутствует четкое форматирование исходного:
>> all(rat(2/3 + 1/6) == rat(5/6))
ans = 1
>> single(2/3 + 1/6) == single(5/6)
ans = 1
При использовании Octave для обучения детей арифметике «грязные» переводы математических выражений бесполезны.
Можно ли выполнить какие-либо глобальные корректировки, чтобы оценить как true
исходное выражение?