我必须使用Knuth的算法D(编程艺术第二卷)将任何数字(无论大小)除以另一个数字,例如72548的74839234。
我做了两个数组来表示这些数字
n[] = {7,4,8,3,9,2,3,4}
d[] = {7,2,5,4,8}我正在尝试获得如下输出:
q[] = {1,0,3,1}
r[] = {4,2,2,4,6}我真的不知道该从何说起。任何帮助或指导都将不胜感激!
发布于 2013-10-18 17:07:06
在D1你有d=1,所以设置
n[]={0,7,4,8,3,9,2,3,4}n = 5,m = 3.
另外,在步骤D4中有一个形式错误:(第二行)应该是...
minus q(hat) times (v1, v2, ..., vn)b TIMES b ** (m - j)。
在这里,**表示"power of“(Fortran风格,便于编写)。当然,b = 10在这里,所以
times b ** (m - j)将减法向左移位到适当的减法位置。
https://stackoverflow.com/questions/16074424
复制相似问题