尝试查找 num^num 的前 k 位的问题,我用 C++ 和 Python 编写了相同的程序
C++
long double intpart,num,f_digit,k;
cin>>num>>k;
f_digit= pow(10.0,modf(num*log10(num),&intpart)+k-1);
cout<<f_digit;
Python
(a,b) = modf(num*log10(num))
f_digits = pow(10,b+k-1)
print f_digits
输入
19423474 9
输出
C++ > 163074912
Python > 163074908
我检查了结果,C++ 解决方案是准确的。在 http://www.wolframalpha.com/input/?i=19423474^19423474 检查它
知道如何在 Python 中获得相同的精度吗???
编辑:我知道外部库包以获得这种精度,但任何原生解决方案?