Как бороться с ошибками десятичных операций в dart? - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь исправить десятичную ошибку, сгенерированную в моей программе.

Например, у меня есть код: -


void main() {
  double a = 300;
  double b = 150;
  double c = 33.33;
  double d = 100;

//sum is exact 583.33

  double average = (a+b+c+d)/4;

  print(average);

  print(average*4);

//I want to get back the original sum
} 

Это дает результаты: -

145.83249999999998
583.3299999999999

Как показано выше, я хотел вернуть исходную сумму, равную 583,33, но когда я умножил среднее значение на 4, я получил 583,3299999999999, что является небольшой ошибкой, но эта ошибка вызывает проблемы с моей программой.

Как это исправить?

...