Схе́ма Го́рнера
(или
правило Горнера
,
метод Горнера, метод Руффини-Горнера
) — алгоритм вычисления значения
многочлена
, записанного в виде суммы мономов (одночленов), при заданном значении переменной. Метод Горнера позволяет найти
корни
многочлена
, а также вычислить производные полинома в заданной точке. Схема Горнера также является простым
алгоритмом
для деления
многочлена
на
бином
вида
. Метод назван в честь
Уильяма Джорджа Горнера
, однако
Паоло Руффини
опередил Горнера на 15 лет, а китайцам этот способ был известен еще в XIII веке.
Описание алгоритма
Задан многочлен
-
Пусть требуется вычислить значение данного многочлена при фиксированном значении
. Представим многочлен
в следующем виде:
-
Определим следующую последовательность:
-
-
-
…
-
-
…
-
Искомое значение
есть
. Покажем, что это так.
В полученную форму записи
подставим
и будем вычислять значение выражения, начиная с внутренних скобок. Для этого будем заменять подвыражения через
:
-
Использование схемы Горнера для деления многочлена на бином
При делении многочлена
на
получается многочлен
с остатком
(см.
теорема Безу
).
При этом коэффициенты результирующего многочлена удовлетворяют рекуррентным соотношениям
-
Таким же образом можно определить кратность корней (использовать схему Горнера для нового полинома).
Также схему можно использовать для нахождения коэффициентов при разложении полинома по степеням
:
-
Схема Горнера может использоваться для нахождения производных многочлена:
-
Примеры использования
Рассчитать
для
Используем синтетическое деление:
x₀│ x³ x² x¹ x⁰
3 │ 2 −6 2 −1
│ 6 0 6
└────────────────────────
2 0 2 5
Здесь в первой строке записаны значение
и коэффициенты многочлена.
Значения (по столбцам) в третьей строке соответствуют сумме значений первой и второй строки (
), а значения второй строки произведению
x
на значение в третьей строке предыдущего столбца (
).
Например, если
мы видим, что
— значения в третьей строке. Так синтетическое деление базируется на методе Горнера.
Разделим
на
:
2 │ 1 −6 11 −6
│ 2 −8 6
└────────────────────────
1 −4 3 0
Новый многочлен
.
Пусть
и
. Разделим
на
, используя метод Горнера.
2 │ 4 −6 0 3 │ −5
────┼──────────────────────┼───────
1 │ 2 −2 −1 │ 1
└──────────────────────┼───────
2 −2 −1 1 │ −4
Tретья строка — сумма первых двух, деленная на два. Каждое значение второй строки совпадает с значением третьей строки в предыдущем столбце. Ответ на деление:
-
Также с помощью схемы Горнера можно вычислять значение числа в позиционной системе исчисления.
Примечания
-
Если целочисленный многочлен обладает целыми корнями, то они будут найдены среди делителей свободного члена.
Курош А. Г.
§ 57. Рациональные корни целочисленных многочленов
//
. — Наука. — Москва, 1968.
18 октября 2013 года.
См. также
Литература
-
Глава 6. Метод преобразования: Схема Горнера и возведение в степень //
—
М.
:
, 2006. — С. 284—291. — 576 с. —
ISBN 978-5-8459-0987-9
-
Волков Е. А.
§ 2. Вычисление значений многочлена. Схема Горнера
// Численные методы. — Учеб. пособие для вузов. — 2-е изд., испр. —
М.
: Наука, 1987. — 248 с.
-
С. Б. Гашков.
§ 14. Схема Горнера и перевод из одной позиционной системы в другую
//
. —
М.
:
МЦНМО
, 2004. — С. 37—39. — (Библиотека «Математическое просвещение»). —
ISBN 5-94057-146-8
.
Ссылки
-
-
— обобщение схемы Горнера на случай полинома от нескольких переменных.
-