繁体   English   中英

如何将大数除以其他大数

[英]How to divide large number by other large number

我想除以例如:10^30/10^20。 我想用 C 编写一个程序。我不知道该怎么做。 我所知道的是我必须划分字符数组。 非常感谢您的帮助!

如果您的数字和结果在DBL_MAXDBL_MIN值指定的精度范围内,则可以使用double

您或许可以编译并运行如下所示的程序来确定系统上的这些值:

#include <stdio.h>
#include <float.h>

int main () {
   printf("The maximum value of double = %.10e\n", DBL_MAX);
   printf("The minimum value of double = %.10e\n", DBL_MIN);
   printf("The number of digits in the number = %d\n", DBL_MANT_DIG);
}

如果您的计算和结果需要更高的精度,请查看 GMP 或其他大量库。

如果您想知道如何读取这些数字,可以查看 Stack Overflow 上以前的答案,这些答案建议通过scanf输入读入doublelong double ,例如: https : //stackoverflow.com/a/24343083/19410

将这些数字转换为double或其他类型后,就可以进行计算了。

在进行计算时,请始终牢记上溢或下溢情况。 DBL_MAXDBL_MIN (或您选择的任何类型)的边界通常会限制您可以使用该类型的值进行计算的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM