Javascript.RU

 
 
Опции темы
 
Старый 14.07.2016, 14:33
Аватар для JavDev
Новичок на форуме
Отправить личное сообщение для JavDev Посмотреть профиль Найти все сообщения от JavDev
 
Регистрация: 14.07.2016
Сообщений: 6

Длинная арифметика
Всем привет. Появилась потребность реализовать операции( +,-,*,/) для чисел большой длины.
Для меня наиболее понятен метод, при котором длинное число делится и заносится в массив по 4 эл-та в ячейку.
Может есть какие-нибудь другие методы, которые проще и удобнее реализовать?
 
Старый 14.07.2016, 14:44
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Число большой длины - Ne±E и вычисляйте на здоровье.
 
Старый 14.07.2016, 14:48
Аватар для JavDev
Новичок на форуме
Отправить личное сообщение для JavDev Посмотреть профиль Найти все сообщения от JavDev
 
Регистрация: 14.07.2016
Сообщений: 6

Сообщение от laimas Посмотреть сообщение
Число большой длины - Ne±E и вычисляйте на здоровье.
А можно поподробнее? Или, где можно почитать?
Я хотел число, например, длины 64 занести в массив из 16 ячеек. И потом доставать из каждого массива. Но я не знаю, как реализовать действия над ними.
 
Старый 14.07.2016, 14:50
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

https://learn.javascript.ru/number
 
Старый 14.07.2016, 15:02
Аватар для JavDev
Новичок на форуме
Отправить личное сообщение для JavDev Посмотреть профиль Найти все сообщения от JavDev
 
Регистрация: 14.07.2016
Сообщений: 6

Например, есть число 12345678912345678912345678912345678912345678912345 67891234567891 длины 64 символа, и его требуется умножить на такое же число.

Если это число перевести в шестнадцатеричную систему, то получается 30046031AC0B18000000000000000000000000000000000000 000
 
Старый 14.07.2016, 15:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,155

JavDev,
http://alexbardas.github.io/bignumber.js/
 
Старый 14.07.2016, 15:17
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Это число умноженное на него JS отобразит как 1.5241578780673678546105778311536e+62
 
Старый 14.07.2016, 15:25
Аватар для JavDev
Новичок на форуме
Отправить личное сообщение для JavDev Посмотреть профиль Найти все сообщения от JavDev
 
Регистрация: 14.07.2016
Сообщений: 6

Сообщение от рони Посмотреть сообщение
JavDev,
http://alexbardas.github.io/bignumber.js/
Вот такое и надо, только свое написать
Спасибо, буду разбираться
 
Старый 14.07.2016, 15:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,155

JavDev,
https://github.com/MikeMcl/bignumber.js
https://github.com/jtobey/javascript-bignum
 
Старый 14.07.2016, 15:44
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,155

Сообщение от JavDev
только свое написать

реализация вычитания
http://javascript.ru/forum/showthrea...635#post268635
 

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Целочисленная арифметика bf_karatel Общие вопросы Javascript 0 20.04.2013 01:17


© Илья Кантор, 2007-2021 О проекте - Архив форума - Вверх