Можно ли получить до 1000 десятичных цифр в С#?
мне нужно по крайней мере 1000 знаков после запятой значения пи для моей программы.
Можно ли получить до 1000 десятичных цифр в С#?
мне нужно по крайней мере 1000 знаков после запятой значения пи для моей программы.
Ну, вы можете использовать массив для имитации числа, например, если вам нужно вычислить a (имеет 100000 цифр) плюс b (имеет 99999 цифр):
a: a[100000] a[99999] a[99998] ... a[1] a[0]
+b: b[9999] b[99998] ... b[1] b[0]
----------------------------------------------------------------------------
... a[1]+b[1]+Carry a[0]+b[0]
Да, но без использования встроенных типов данных. Decimal — это лучшее, что вы можете сделать, и оно содержит только от 28 до 29 значащих цифр. .
Вам понадобится библиотека произвольной точности, или вам нужно пересмотреть свой дизайн и определить, действительно ли вам нужна 1000 десятичных цифр.
Если вы просто пытаетесь вычислить число Пи до 1000 цифр, существуют функции, которые вы можете использовать для вычисления n-й цифры числа Пи. В этот момент вы можете просто сохранить результаты в массиве
Если вы все еще ищете альтернативу другим ответам, ознакомьтесь с Bailey Borwein Plouffe формула для вычисления n-й цифры числа Пи. Вы можете использовать его для вычисления первых 1000 цифр.
16^-k
(значение разряда), умноженным на какое-то целое число в диапазоне 0-15 (сама цифра), и я вижу место значение в приведенной выше формуле, но то, что должно быть цифрой, не кажется целым числом.
- person Ben Voigt; 08.07.2012
Вам нужно использовать арифметику произвольной точности. Я не уверен насчет нативных библиотек C#, но GMP говорит, что у них есть оболочка C#.
Вы также можете использовать J# BigDecimal.