Извлечение кубического корня в столбик

Я уже писала здесь, как можно извлекать в столбик квадратный корень. Однако практически такой же алгоритм, напоминающий деление столбиком (или арабский способ деления) работает и для извлечения корней более высоких степеней. Рассмотрим, как извлекать кубический корень с произвольной точностью, определяя на каждом шаге по одной цифре этого корня. Как и для квадратных корней, буду описывать алгоритм пошагово, и каждый шаг будет сопровождаться примером.

Итак, давайте для примера будем извлекать кубический корень из

    \[75686967\]

.

1. Разобьем цифры исходного числа на группы по три цифры в каждой. При этом разбиение начинаем от десятичной запятой, двигаясь влево и вправо.

Пример. В нашем случае разбиение выглядит таким образом:

    \[75^{\prime}686^{\prime}967\]

.

2. Извлечем кубический корень из первой слева группы цифр. Разумеется, точно корень может не извлекаться, поэтому возьмем наибольшее число, куб которого меньше числа, образованного данной группой цифр.

Пример. В нашем случае первая слева группа цифр

    \[75\]

, поэтому первая цифра кубического корня —

    \[4\]

. Действительно,

    \[4^3=64\]

, а вот

    \[5^3\]

уже равно

    \[125>75\]

.

3. Возводим найденное число в куб и вычитаем из первой слева группы цифр, к разности приписываем справа следующие три цифры (т.е. цифры следующей группы).

Пример. В нашем случае получаем:

    \[\begin{tabular}{r@{}l@{}l} &$75^{\prime}$&$686^{\prime}$\\[-3mm] $-$&&\\[-3mm] &$64$&\\ \hline &$11$&$686$ \end{tabular}\]

4. Теперь нужно подобрать следующую цифру корня. Для этого квадрат числа, образованного уже имеющимися цифрами, умножаем на

    \[3\]

и выбираем цифру, при умножении на которую получится число, меньшее, чем число, образованное всеми цифрами разности, кроме двух последних, но достаточно близкое к нему. Однако следует иметь в виду, что если при очередном вычитании получилось отрицательное число, нужно последнюю вычисленную цифру уменьшить на единицу.

Пример. Имеем:

    \[4^2\cdot 3=48\]

, поэтому выбираем цифру

    \[2\]

(в самом деле,

    \[48\cdot2=96\]

, а

    \[48\cdot3=144>116\]

.

5. Умножаем полученное ранее произведение на выбранную цифру, потом еще на

    \[100\]

, прибавляем к полученному числу квадрат выбранной цифры, умноженный на число, образованное уже найденными цифрами корня, домноженное на

    \[30\]

, после чего прибавляем еще куб выбранной цифры.

Пример. У нас получится

    \[48\cdot2\cdot100+2^2\cdot4\cdot30+2^3=9600+480+8=10088\]

.

6. Из полученной на шаге 3 разности вычитаем число, полученное на шаге 5.

Пример. В нашем случае это будет

    \[11686-10088=1598\]

.

7. Переходим к шагу 4.

Продолжаем данную последовательность шагов алгоритма до тех пор, пока корень не вычислен с требуемой точностью.

Пример. В нашем случае мы возводим в квадрат

    \[42\]

и умножаем его на

    \[3\]

:

    \[42^2\cdot3=5292\]

. Теперь подберем цифру, при умножении на которую числа

    \[5292\]

получим близкое к

    \[15989\]

, но меньшее его число. Эта цифра

    \[3\]

(

    \[5292\cdot3=15876,5292\cdot4=21168>16989\]

). Теперь из числа

    \[1598967\]

(разность, полученная на предыдущем шаге и приписанная справа следующая группа цифр) нужно вычесть следующую сумму:

    \[42^2\cdot3\cdot3\cdot100+3^2\cdot42\cdot30+3^3=1587600+11340+27=1598967\]

.

Тем самым, разность будет равна нулю, и корень, который оказался точным, извлечен — это

    \[423\]

.

Теперь приведу запись, которая при этом получается (разумеется, при реальных вычислениях все скорее всего будет не столь красиво и аккуратно ;) ).

    \[\begin{tabular}{r@{}l@{}l} &$\sqrt[3]{75^{\prime}686^{\prime}967}$&$=423$\\[-3mm] $-$&&\\[-3mm] &$\ \ \ 64$&\\ \cline{2--2} \end{tabular}\]

    \[\begin{tabular}{r@{}l@{}l@{}l} &$11$&$686$&\\[-3mm] $-$&&&\\[-3mm] &$10$&$088$&\\ \cline{2--4} &&$1598$&$967$\\[-3mm] $-$&&&\\[-3mm] &&$1598$&$967$\\ \cline{2--4} &&&$0$ \end{tabular}\hskip2cm \begin{array}{l} 4^2\cdot 3=48\\ 48\cdot2\cdot100+2^2\cdot4\cdot30+2^3=10088\\ 42^2\cdot3\cdot3\cdot100+3^2\cdot42\cdot30+3^3=1598967\\ 42^2\cdot3=5292 \end{array}\]

Алгоритм основан на формуле куба суммы:

    \[(10a+b)^3=1000a^3+300a^2b+30ab^2+b^3\]

.

Для тех же, кому интересно извлечение корней высших степеней, даю ссылку (правда, материал на английском): http://en.wikipedia.org/wiki/Shifting_nth-root_algorithm.

Комментариев: 8

  1. 1 Дорофей.:

    Спасибо за “добротную” формулу. Хоть она и большая и для меня в новинку такой ход вычисления, но ведь новое – иногда хорошо.

    Ещё раз спасибо. :3 :3 :3

    http://hijos.ru/wp-content/uploads/comment_images/post-7130/2013/2/01e41c1233f19c7eb751940de014c1da.jpg

    [Ответить]

  2. 2 Никита:

    В последнем примере в первой строчке ошибка: в нашем случае мы возводим в квадрат не 23, а 42, исправте)

    [Ответить]

    Елизавета Александровна Калинина Reply:

    Спасибо! Исправила.

    [Ответить]

    Georgiev Reply:

    Pravilno: 42,a net 23!

    [Ответить]

  3. 3 Павел:

    Хочу акцентировать внимание на этой фразе.

    “Однако следует иметь в виду, что кроме данного числа, из разности необходимо будет вычитать еще и другие числа, так что иногда имеет выбрать цифру чуть меньше.”

    Если при очередном вычитании получилось отрицательное число, значит последний рассчитанный вами разряд нужно уменьшить на единичку.
    Завис из-за этого где-то на пол часа. В статье все сходилось, а на бумаге – нет.

    [Ответить]

    Елизавета Александровна Калинина Reply:

    Спасибо, исправила.

    [Ответить]

  4. 4 Антон:

    У меня почему то не получается вычислить вторую цифру. К примеру я хочу вычислить корень из 48558765
    Начало понятно. Разбиваю число на группы по 3 цифры в каждой. 485.587.656
    Потом я знаю, что 7 в кубе 343, а 8 в кубе 512. Соответственно первая цифра 7
    Потом вычитаю 343 из 485 и добавляю три цифры из второй группы, получается 142587.
    Дальше 7 я возвожу в квадрат, и умножаю на 3, получаю 147. И выбираю цифру, при умножении на которую получаю число, меньшее, чем число, образованное всеми цифрами разности, кроме двух последних, но достаточно близкое к нему.
    147*8=1176 147*9=1323.
    Получается, я должен выбрать цифру 9, но в ответе цифра 8.

    [Ответить]

    Елизавета Александровна Калинина Reply:

    Если Вы сложите все, что нужно:

        \[132300+81\cdot7\cdot30+9^3=150039\]

    , это больше, чем

        \[142587\]

    , т.е., как указано в алгоритме, нужно взять

        \[8\]

    .

    [Ответить]

Оставьте свой отзыв

Добавить изображение