Я должен разделить любое число (независимо от размера) на другое число, используя деление большого целого числа, например, с помощью алгоритма Кнута D (Искусство программирования тома 2). 74839234
от 72548
,
Я сделал два массива для представления этих чисел
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}
Я действительно не знаю, с чего начать. Любая помощь или руководство будут оценены!
На 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)
,
Здесь ** означает «сила» (стиль Fortran для простого написания). Конечно, b = 10
вот так
times b ** (m - j)
сдвигает вычитаемое влево, в надлежащее место для вычитания.
Других решений пока нет …