Рубрики
Без рубрики

Округление чисел в JavaScript

Введение Математический объект JavaScript предоставляет метод округления до целых чисел. Этот… С тегами javascript, программирование, java.

Введение Математический объект JavaScript предоставляет метод округления до целых чисел. Это помогает заложить основу для округления чисел с помощью следующего метода:

Математический раунд(x)

Математика. так начинаются все математические функции. Буква “М” должна быть ограничена. Функция округляет значение, как только десятичное число равно.5. Он округляется от 1,5 до 2, от 2,5 до 3, от 3,5 до 4 и т.д. Он округляет от -1,5 до -1, от -2,5 до -2, от -3,5 до -3 и т.д. С того времени, когда математика. round() округляет значение с плавающей запятой только до ближайшего целого значения. Мы можем использовать это в наших интересах для решения задачи округления до определенного числа знаков после запятой. Как генерировать случайные числа? Предположим, мы хотим имитировать бросок кубика. Мы хотим, чтобы он появился случайным образом 1, 2, 3, 4, 5, или 6 в симуляции. Первый шаг – запросить JavaScript для генерации случайного числа. Это почти случайно, потому что технически известно как псевдослучайное. Это достаточно близко к случайности для величайших целей.

Следующий код создает псевдослучайное число, используя 16 знаков после запятой. Этот код находится в диапазоне от 0,0000000000000000 до 0,99999999999999 и присваивает его переменной randomNumber.

var.random();

Функция всегда выводит 16-значный десятичный знак в диапазоне от 0,0000000000000000 до 0,9999999999999999. Мы можем преобразовать десятичную дробь в целое число, умножив ее на сто квадриллионов:

0000000000000000 * 7474887706339359 * 9999999999999999 * 0000000000000000 * 7474887706339359 *.7474887706339359 9999999999999999 *.9999999999999994 var.random(); var улучшенное число = (десятичное число * 6) + 1; var.floor(улучшенное число); Содержит 16 знаков после запятой. Он присваивается переменной BigDecimal. Изменяет 16-разрядную десятичную дробь на число в диапазоне от 0,0000000000000000 до 5,9999999999999999, а затем добавляет 1; следовательно, диапазон составляет 1,0000000000000000 по сравнению с 6,999999999999999999. Это число присваивается переменной improvedname. Обведите значение, обозначенное improvedname, кружком до ближайшего целого числа, которое находится в диапазоне от 1 до 6. Триллионы вероятных чисел – это больше, чем мы хотим в нашем виртуальном броске кубика. Нам нужно шесть мыслимых чисел, 1 из стороны в сторону 6. Поэтому в качестве альтернативы умножению на сто квадриллионов мы сначала умножим огромную десятичную дробь на 6. Восприятие может подсказать нам, что мы можем закончить работу округлением. Однако это не работает математически. Так как ноль округляется до 0, а ничто не округляется до 6. Числа в середине, которые достигаются как округлением вверх, так и округлением вниз, будут появляться почти в два раза чаще. Тогда мы можем предоставить всем числам эквивалентный шанс, если добавим 1 к результату, предварительно округлив в меньшую сторону. На данный момент код для наших имитируемых бросков кубика будет следующим;

Это то, что происходит в приведенном выше коде построчно;

Округление отрицательных чисел, кроме того, мы должны предупреждать, что отрицательные числа округляются иначе, чем положительные числа в JavaScript. Документы по математике. round () прояснит это лучше, поскольку;

Аргумент округляется до целого числа на следующее большее абсолютное значение, если дробная часть аргумента больше 0,5. Аргумент округляется до целого числа на меньшее абсолютное значение, если оно меньше 0,5. Аргумент округляется до последующего целого числа в направлении +∞, если дробная часть равна ровно 0,5.

Мы просто хотим знать о присущих JavaScript ошибках округления с плавающей запятой, которые обычно не слишком продуманны. Мы можем полностью избежать ошибок округления, используя экспоненциальную нотацию при округлении. Для получения более подробной информации посетите: https://www.technologiesinindustry4.com/rounding-numbers-in-javascript/

Оригинал: “https://dev.to/ahmedmansoor012/rounding-numbers-in-javascript-5fjc”