Помогите разобраться с библиотекой long.js
Нужно посчитать факториал числа. Пока result меньше 170 то считает нормально, но когда больше, в поле выводит infinite. Нашел в инете long.js для работы с длинными числами, но не могу разобраться. Ниже в коде я пытаюсь присвоить переменной long результат функции long.js не выходит. Прошу помощи:help:
var result =1; var r=200; for (var i=1; i<=r; i++){ result = result * i; }; var long = Long.fromNumber(result); $("#text").val(long);// Вывод на текстовое поле результат |
Цитата:
|
я так понял что библиотека для представления 64-го числа.
https://www.npmjs.com/package/long |
Может есть иные способы решить мою задачу?
|
Длинные числа, факториал
chainikd,
ой :) <script> function diff(max, min) { max = max.split("").reverse(); min = min.split("").reverse(); var len = Math.max(max.length, min.length), result = []; for (var i = 0, b = 0, c = 0; i <= len; i++) { b = (+max[i] || 0) + (+min[i] || 0) + c; result[i] = b > 9 ? (c = 1, b - 10) : (c = 0, b) } return result.reverse().join("").replace(/^0+/, "") } function sum(x, y) { var res = "0"; for (var i = 0; i < y; i++) res = diff(res, "" + x); return res } var re = /(?=\B(?:\d{3})+(?!\d+))/g; var result = "1"; var r = 200; for (var i = 1; i <= r; i++) { result = sum(result, "" + i); document.write(i + " => " + result.replace(re, " ") + "<br><hr>") }; </script> |
рони,
Спасибо большое))) Буду разбираться) |
Часовой пояс GMT +3, время: 23:23. |