Вывести на дисплей 20 значное число в нормально виде
Проблема следующая : при работе функции на дисплей выходит результат с плавающей запятой. Пробовал просто выводить число частями.. но увы вы водит не понятный результат.. зачем то округляет самостоятельно.
:help: :help: :help: :help: var therdEx = solution("712569312664357328695151392" , "8100824045303269669937"); function solution(firstarg, secondarg){ res = Number(firstarg)+Number(secondarg); r= res.toString(); return r } console.log(therdEx); |
Mac2017,
искать плагин BigNumber http://javascript.ru/forum/misc/6401...rifmetika.html |
Надо решить на native JS - плагин слишком просто.
|
Цитата:
|
Чот там к тому же выводу пришли. Или намекаешь на что лучше преобразовать массив, а потом вывести на дисплей.
|
Mac2017,
не понимаю ваших сообщений, всё чем мог помочь смотрите по ссылке. |
<head> <meta charset="utf-8"> </head> <body> left:<input type="text" id="left" /> <br/>right: <input type="text" id="right" /> <button id="summ">Сложить</button> <br/>sum: <span id="sum"></span> <script> document.getElementById("summ").addEventListener("click", function(e) { var left = document.getElementById('left').value; var right = document.getElementById('right').value; if(isNaN(left) || isNaN(right)) return; document.getElementById('sum').innerHTML = (add(left,right)); }); function res(a, b, result, carry, base) { if (a.length == 0 && b.length == 0 && !carry) return result; var left = parseInt(a.pop() || '0', 10); var right = parseInt(b.pop() || '0', 10); var l = left + right + (carry || 0); return res(a, b, l % base + (result || ""), Math.floor(l / base), base); } function add(a, b) { return res(a.toString().split(""), b.toString().split(""), "", "", 10).toString(); } </script> </body> если вам только для сложения |
Часовой пояс GMT +3, время: 13:14. |