Список программного обеспечения для арифметических вычислений произвольной точности
![]() | в этой статье Использование внешних ссылок может не соответствовать политике и рекомендациям Википедии . ( сентябрь 2022 г. ) |
В этой статье перечислены библиотеки, приложения и другое программное обеспечение, которые позволяют или поддерживают арифметику произвольной точности .
Библиотеки [ править ]
Автономное прикладное программное обеспечение [ править ]
Программное обеспечение, поддерживающее вычисления произвольной точности:
- до н.э. POSIX - арифметический язык произвольной точности, который входит в стандартную комплектацию большинства Unix-подобных систем.
- dc : «Настольный калькулятор» — калькулятор RPN произвольной точности, который входит в стандартную комплектацию большинства Unix-подобных систем.
- KCalc — научный калькулятор на базе Linux.
- Maxima : система компьютерной алгебры целые числа которой , большие непосредственно унаследованы от языка ее реализации Common Lisp . Кроме того, он поддерживает числа с плавающей запятой произвольной точности, bigfloats .
- Maple , Mathematica и некоторые другие программы компьютерной алгебры включают арифметику произвольной точности. Mathematica использует GMP для приблизительного вычисления чисел.
- PARI/GP — система компьютерной алгебры с открытым исходным кодом , поддерживающая произвольную точность.
- Посчитайте! , бесплатный калькулятор произвольной точности с открытым исходным кодом и автозаполнением.
- SageMath с открытым исходным кодом. — система компьютерной алгебры
- SymPy , CAS
- Набор инструментов символьной математики ( MATLAB )
- Калькулятор Windows , начиная с Windows 98, использует произвольную точность для основных операций (сложение, вычитание, умножение, деление) и 32-значную точность для сложных операций (квадратный корень, трансцендентные функции).
- SmartXML — бесплатный язык программирования с интегрированной средой разработки (IDE) для математических расчетов. Можно использовать переменные типа BigNumber или преобразовать обычные числа в большие числа с помощью оператора преобразования # (например, #2.3^2000.1). Большие числа SmartXML могут содержать до 100 000 000 десятичных цифр и до 100 000 000 целых цифр.
Языки [ править ]
Языки программирования, поддерживающие вычисления произвольной точности, встроенные или находящиеся в стандартной библиотеке языка:
- Ada : в предстоящей версии Ada 202x добавлены
Ada.Numerics.Big_Numbers.Big_Integers
иAda.Numerics.Big_Numbers.Big_Reals
пакеты в стандартную библиотеку, предоставляющие целые и действительные числа произвольной точности. - Агда :
BigInt
Тип данных на бэкэнде Epic реализует арифметику произвольной точности. - Common Lisp : Стандарт ANSI Common Lisp поддерживает целые числа произвольной точности, пропорции и комплексные числа.
- С# :
System.Numerics.BigInteger
, из .NET 5 - ColdFusion : встроенный
PrecisionEvaluate()
функция динамически оценивает одно или несколько строковых выражений слева направо, используя арифметику точности BigDecimal для вычисления значений арифметических выражений произвольной точности. - D : стандартный библиотечный модуль
std.bigint
- Дарт : встроенный
int
тип данных реализует арифметику произвольной точности. - Emacs Lisp : поддерживает целые числа произвольного размера, начиная с Emacs 27.1.
- Эрланг : встроенный
Integer
тип данных реализует арифметику произвольной точности. - Go : стандартный пакет библиотеки
math/big
реализует целые числа произвольной точности (Int
тип), рациональные числа (Rat
тип) и числа с плавающей запятой (Float
тип) - Коварство : встроенный
exact
числа имеют произвольную точность. Пример:(expt 10 100)
дает ожидаемый (большой) результат. Точные числа также включают рациональные числа, поэтому(/ 3 4)
производит3/4
. Одним из языков, реализованных в Guile, является Scheme . - Хаскелл : встроенный
Integer
тип данных реализует арифметику произвольной точности и стандартData.Ratio
модуль реализует рациональные числа. - Идрис : встроенный
Integer
тип данных реализует арифметику произвольной точности. - ISLISP ISO/IEC 13816:1997(E) : стандарт ISLISP поддерживает целые числа произвольной точности.
- J : встроенная повышенная точность
- Ява : Класс
java.math.BigInteger
(целое число),java.math.BigDecimal
Класс (десятичный) - JavaScript : начиная с ES2020 , BigInt поддерживается в большинстве браузеров; [1] библиотека gwt-math предоставляет интерфейс для
java.math.BigDecimal
, а такие библиотеки, как DecimalJS , BigInt и Crunch, поддерживают целые числа произвольной точности. - Юля : встроенный
BigFloat
иBigInt
типы обеспечивают арифметику с плавающей запятой произвольной точности и целочисленную арифметику соответственно. - newRPL : целые числа и числа с плавающей запятой могут иметь произвольную точность (не менее 2000 цифр); максимальное количество настраиваемых цифр (по умолчанию 32 цифры)
- Ним : bigints и множественные привязки GMP .
- OCaml : библиотека Num поддерживает целые и рациональные числа произвольной точности.
- OpenLisp : поддерживает целые числа произвольной точности.
- Перл :
bignum
иbigrat
Прагмы обеспечивают поддержку BigNum и BigRational для Perl. - PHP : Модуль BC Math обеспечивает математические вычисления произвольной точности.
- PicoLisp : поддерживает целые числа произвольной точности.
- Щука : встроенная
int
type автоматически изменится с машинного целого числа на произвольную точность, как только значение превысит емкость первого. - Пролог : совместимые со стандартом ISO системы Пролога могут проверять флаг Пролога «ограниченный». Большинство основных систем Пролога поддерживают целые числа произвольной точности.
- Python : встроенный
int
(3.х) /long
(2.x) целочисленный тип имеет произвольную точность.Decimal
Класс в модуле стандартной библиотеки decimal имеет определяемую пользователем точность и ограниченные математические операции (возведение в степень, квадратный корень и т. д., но не имеет тригонометрических функций).Fraction
Класс в модуле Fractions реализует рациональные числа. Более обширные арифметические операции с плавающей запятой произвольной точности доступны в сторонних пакетах «mpmath» и «bigfloat». - Ракетка : встроенная
exact
числа имеют произвольную точность. Пример:(expt 10 100)
дает ожидаемый (большой) результат. Точные числа также включают рациональные числа, поэтому(/ 3 4)
производит3/4
. Числа произвольной точности с плавающей запятой включены в модуль math/bigfloat стандартной библиотеки . - Раку : Ракудо поддерживает
Int
иFatRat
типы данных, которые преобразуются в целые и рациональные числа произвольной точности. - Rexx : варианты, включая Open Object Rexx и NetRexx.
- RPL (только для серии HP 49/50 в точном режиме ): калькулятор обрабатывает числа, введенные без десятичной точки, как целые числа, а не как числа с плавающей запятой; целые числа имеют произвольную точность, ограниченную только доступной памятью.
- Руби : встроенный
Bignum
Целочисленный тип имеет произвольную точность.BigDecimal
Класс в модуле стандартной библиотеки bigdecimal имеет точность, определяемую пользователем. - Схема : Р 5 РС поощряет, а Р. 6 RS требует, чтобы точные целые и точные рациональные числа имели произвольную точность.
- Скала :
Class BigInt
иClass BigDecimal
. - Семя7 :
bigInteger
иbigRational
. - Self : целые числа произвольной точности поддерживаются встроенным
bigInt
тип. - Smalltalk : варианты, включая Squeak , Smalltalk/X , GNU Smalltalk , Dolphin Smalltalk и т. д.
- SmartXML — бесплатный язык программирования с интегрированной средой разработки (IDE) для математических вычислений. Переменные
BigNumber
можно использовать тип или обычные числа можно преобразовать в большие числа с помощью оператора преобразования.#
(например,#2.3^2000.1
). Большие числа SmartXML могут содержать до 100 000 000 десятичных цифр и до 100 000 000 целых цифр. - Стандартный ML : дополнительный встроенный
IntInf
Структура реализует подпись INTEGER и поддерживает целые числа произвольной точности. - Tcl : Начиная с версии 8.5 (2007 г.), целые числа по умолчанию имеют произвольную точность. (За кулисами язык переключается на использование внутреннего представления произвольной точности для целых чисел, слишком больших, чтобы уместиться в машинное слово. Привязки из C должны использовать библиотечные функции, такие как
Tcl_GetLongFromObj
чтобы получить значения как собственные типы данных C из целых чисел Tcl.) - Wolfram Language , как и Mathematica , использует GMP для приблизительного вычисления чисел.
Онлайн калькуляторы [ править ]
Для разовых расчетов. Запускается на сервере или в браузере. Никакой установки или компиляции не требуется.
- 1. https://www.mathsisfun.com/calculator-precision.html 200 мест
- 2. http://birrell.org/andrew/ratcalc/ произвольно; выберите рациональную или фиксированную точку и количество мест
- 3. Онлайн-калькулятор PARI/GP — https://pari.math.u-bordeaux.fr/gp.html (PARI/GP — широко используемая система компьютерной алгебры, предназначенная для быстрых вычислений в теории чисел (факторизации, алгебраическая теория чисел, эллиптические кривые, модульные формы, L-функции...), но также содержит большое количество других полезных функций для вычислений с использованием математических объектов, таких как матрицы, многочлены, степенные ряды, алгебраические числа и т. д., а также множество трансцендентных функций PARI. также доступен в виде библиотеки C для ускорения вычислений.)
- 4.1. AutoCalcs — позволяет пользователям искать, создавать, хранить и делиться многоэтапными вычислениями с использованием явных выражений с автоматическим преобразованием единиц измерения. Это платформа, которая позволяет пользователям выйти за рамки преобразования единиц измерения, что, в свою очередь, значительно повышает эффективность. Множество примеров расчетов можно найти на сайте AutoCalcs Docs. Расчеты, созданные с помощью AutoCalcs, можно встроить на сторонние веб-сайты.
- 4.2. AutoCalcs Docs — учитывая вышеупомянутый AutoCalcs в качестве механизма вычислений, этот сайт документации представляет собой библиотеку с множеством вычислений, где каждое вычисление, по сути, представляет собой веб-приложение, которое можно запускать в Интернете, в дальнейшем настраивать и многое другое. Представьте, что вы читаете книгу с большим количеством вычислений: это книга/руководство со всеми расчетами, которые можно использовать на лету. Стоит отметить – когда в расчетах участвуют единицы измерения, преобразование единиц можно автоматизировать.