Я пытаюсь найти логарифм очень большого BigInteger в C#. Мне все равно, что такое база логарифма. Когда я пытаюсь это:Поиск журнала большого BigInteger работает неправильно?
BigInteger b = 1000; // the base
// myBigInt is a huge BigInt i want to find the Log of.
exponent = BigInteger.Log(myBigInt, 1000); //Find the Log
// Re-create the orignal BigInt now that I know base and exponent
BigInteger.Pow(b, Convert.ToInt32(exponent));
я получаю исключение переполнения, поскольку Int32 не может удержать результат Лога. Увеличение значения базы не работает.
Вы можете разместить больше кода вашего отсутствуют некоторые переменные здесь. – TheKingDave
@ TheKingDave Хорошо, я объяснил переменные и упростил их. Я надеюсь :) – Jonathan
Пробовал это и показатель степени в моем случае - значение с плавающей запятой. Почему вы конвертируете его в int? Я попробовал его с ОЧЕНЬ большим myBigInt, и он все равно не падает. – TheKingDave