<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://camokathomelab.servebeer.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%B1%D0%B8%D1%81%D0%B5%D0%BA%D1%86%D0%B8%D0%B8</id>
	<title>Метод бисекции - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://camokathomelab.servebeer.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%B1%D0%B8%D1%81%D0%B5%D0%BA%D1%86%D0%B8%D0%B8"/>
	<link rel="alternate" type="text/html" href="https://camokathomelab.servebeer.com/mediawiki/index.php?title=%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%B1%D0%B8%D1%81%D0%B5%D0%BA%D1%86%D0%B8%D0%B8&amp;action=history"/>
	<updated>2026-07-17T12:09:32Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://camokathomelab.servebeer.com/mediawiki/index.php?title=%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%B1%D0%B8%D1%81%D0%B5%D0%BA%D1%86%D0%B8%D0%B8&amp;diff=52638&amp;oldid=prev</id>
		<title>imported&gt;Eoan Ermine: /* Псевдокод */</title>
		<link rel="alternate" type="text/html" href="https://camokathomelab.servebeer.com/mediawiki/index.php?title=%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%B1%D0%B8%D1%81%D0%B5%D0%BA%D1%86%D0%B8%D0%B8&amp;diff=52638&amp;oldid=prev"/>
		<updated>2025-05-18T18:11:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Псевдокод&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{distinguish|Двоичный поиск}}&lt;br /&gt;
{{distinguish|Дихотомия}}&lt;br /&gt;
[[Image:Bisection method.svg|250px|thumb|Несколько шагов метода деления пополам применяются к начальному диапазону [a&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;;b&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;]. Большая красная точка — это корень функции.]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Метод бисекции&amp;#039;&amp;#039;&amp;#039; или &amp;#039;&amp;#039;&amp;#039;метод деления [[отрезок|отрезка]] пополам&amp;#039;&amp;#039;&amp;#039; — простейший [[численные методы|численный метод]] для решения [[нелинейные уравнения|нелинейных уравнений]] вида &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;)=0. Предполагается только непрерывность функции &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;). Поиск основывается на [[теорема о промежуточных значениях|теореме о промежуточных значениях]].&lt;br /&gt;
&lt;br /&gt;
== Обоснование ==&lt;br /&gt;
Алгоритм основан на следующем следствии из [[Теорема Больцано — Коши|теоремы Больцано — Коши]]:&lt;br /&gt;
&lt;br /&gt;
{{теорема|1=Пусть [[непрерывная функция]] &amp;lt;math&amp;gt;f(x)\in\mathrm{C}([a,\;b])&amp;lt;/math&amp;gt;, тогда, если &amp;lt;math&amp;gt;sign(f(a)) \ne sign(f(b))&amp;lt;/math&amp;gt;, то &amp;lt;math&amp;gt;\exist c\in[a,\;b]:\;f(c)=0&amp;lt;/math&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
Таким образом, если мы ищем ноль, то на концах отрезка функция должна быть противоположных знаков. Разделим отрезок пополам и возьмём ту из половинок, на концах которой функция по-прежнему принимает значения противоположных знаков. Если значение функции в серединной точке оказалось искомым нулём, то процесс завершается.&lt;br /&gt;
&lt;br /&gt;
Точность вычислений задаётся одним из двух способов:&lt;br /&gt;
# &amp;lt;math&amp;gt;\varepsilon_{f(x)}&amp;lt;/math&amp;gt; по оси &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;, что ближе к условию &amp;lt;math&amp;gt;f(x)=0&amp;lt;/math&amp;gt; из описания алгоритма; или&lt;br /&gt;
# &amp;lt;math&amp;gt;\varepsilon_x&amp;lt;/math&amp;gt;, по оси &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;, что может оказаться удобным в некоторых случаях.&lt;br /&gt;
Процедуру следует продолжать до достижения заданной точности.&lt;br /&gt;
&lt;br /&gt;
Для поиска произвольного значения достаточно вычесть из значения функции искомое значение и искать ноль получившейся функции.&lt;br /&gt;
&lt;br /&gt;
== Описание алгоритма ==&lt;br /&gt;
Задача заключается в нахождении корней [[нелинейные уравнения|нелинейного уравнения]]&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;f(x)=0. \qquad ( 1 )&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Для начала итераций необходимо знать отрезок &amp;lt;math&amp;gt;[x_L,x_R]&amp;lt;/math&amp;gt; значений &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;, на концах которого функция принимает значения противоположных знаков.&lt;br /&gt;
&lt;br /&gt;
Противоположность знаков значений функции на концах отрезка можно определить множеством способов. Один из множества этих способов — умножение значений функции на концах отрезка и определение знака произведения путём сравнения результата умножения с нулём:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;f(x_L)\cdot f(x_R)&amp;lt;0, \qquad ( 2.1 )&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
в действительных вычислениях такой способ проверки противоположности знаков при крутых функциях приводит к преждевременному [[Арифметическое переполнение|переполнению]].&lt;br /&gt;
&lt;br /&gt;
Для устранения переполнения и уменьшения затрат времени, то есть для увеличения быстродействия, на некоторых программно-компьютерных комплексах противоположность знаков значений функции на концах отрезка нужно определять по формуле:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;sign(f(x_L)) \ne sign(f(x_R)), \qquad ( 2.2 )&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
так как одна операция сравнения двух знаков двух чисел требует меньшего времени, чем две операции: умножение двух чисел (особенно с плавающей запятой и двойной длины) и сравнение результата с нулём. При данном сравнении, значения функции &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; в точках &amp;lt;math&amp;gt;x_L&amp;lt;/math&amp;gt; и &amp;lt;math&amp;gt;x_R&amp;lt;/math&amp;gt; можно не вычислять, достаточно вычислить только знаки функции &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; в этих точках, что требует меньшего машинного времени.&lt;br /&gt;
&lt;br /&gt;
Из непрерывности функции &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; и условия (2.2) следует, что на отрезке &amp;lt;math&amp;gt;[x_L,x_R]&amp;lt;/math&amp;gt; существует хотя бы один корень уравнения (в случае не [[Монотонная функция|монотонной функции]] &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; функция может иметь несколько корней на отрезке, тогда метод приводит к нахождению одного из них).&lt;br /&gt;
&lt;br /&gt;
Найдём значение &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; в середине отрезка:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;x_M=(x_L+x_R)/2,  \qquad ( 3 )&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
в действительных вычислениях, для уменьшения числа операций, в начале, вне цикла, вычисляют длину отрезка по формуле:&lt;br /&gt;
: &amp;lt;math&amp;gt;x_D=(x_R-x_L),&amp;lt;/math&amp;gt;&lt;br /&gt;
а в цикле вычисляют длину очередных новых отрезков по формуле: &amp;lt;math&amp;gt;x_D=x_D/2&amp;lt;/math&amp;gt; и новую середину по формуле:&lt;br /&gt;
: &amp;lt;math&amp;gt;x_M=x_L+x_D.&amp;lt;/math&amp;gt;&lt;br /&gt;
Вычислим значение функции &amp;lt;math&amp;gt;f(x_M)&amp;lt;/math&amp;gt; в середине отрезка &amp;lt;math&amp;gt;x_M&amp;lt;/math&amp;gt;:&lt;br /&gt;
* Если &amp;lt;math&amp;gt;f(x_M)=0&amp;lt;/math&amp;gt; или, в действительных вычислениях, &amp;lt;math&amp;gt;|f(x_M)|\leq\varepsilon_{f(x)}&amp;lt;/math&amp;gt;, где &amp;lt;math&amp;gt;\varepsilon_{f(x)}&amp;lt;/math&amp;gt; — заданная точность по оси &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;, то корень найден.&lt;br /&gt;
* Иначе &amp;lt;math&amp;gt;f(x_M)\ne 0&amp;lt;/math&amp;gt; или, в действительных вычислениях, &amp;lt;math&amp;gt;|f(x_M)|&amp;gt;\varepsilon_{f(x)}&amp;lt;/math&amp;gt;, то разобьём отрезок &amp;lt;math&amp;gt;[x_L,x_R]&amp;lt;/math&amp;gt; на два равных отрезка: &amp;lt;math&amp;gt;[x_L,x_M]&amp;lt;/math&amp;gt; и &amp;lt;math&amp;gt;[x_M,x_R]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь найдём новый отрезок, на котором функция меняет знак:&lt;br /&gt;
* Если значения функции на концах отрезка имеют противоположные знаки на левом отрезке, &amp;lt;math&amp;gt;f(x_L)\cdot f(x_M)&amp;lt;0&amp;lt;/math&amp;gt; или &amp;lt;math&amp;gt;sign(f(x_L)) \ne sign(f(x_M))&amp;lt;/math&amp;gt;, то, соответственно, корень находится внутри левого отрезка &amp;lt;math&amp;gt;[x_L,x_M]&amp;lt;/math&amp;gt;. Тогда возьмём левый отрезок присвоением &amp;lt;math&amp;gt;x_R=x_M&amp;lt;/math&amp;gt;, и повторим описанную процедуру до достижения требуемой точности &amp;lt;math&amp;gt;\varepsilon_{f(x)}&amp;lt;/math&amp;gt; по оси &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
* Иначе значения функции на концах отрезка имеют противоположные знаки на правом отрезке, &amp;lt;math&amp;gt;f(x_M)\cdot f(x_R)&amp;lt;0&amp;lt;/math&amp;gt; или &amp;lt;math&amp;gt;sign(f(x_M)) \ne sign(f(x_R))&amp;lt;/math&amp;gt;, то, соответственно, корень находится внутри правого отрезка &amp;lt;math&amp;gt;[x_M,x_R]&amp;lt;/math&amp;gt;. Тогда возьмём правый отрезок присвоением &amp;lt;math&amp;gt;x_L=x_M&amp;lt;/math&amp;gt;, и повторим описанную процедуру до достижения требуемой точности &amp;lt;math&amp;gt;\varepsilon_{f(x)}&amp;lt;/math&amp;gt; по оси &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
За количество итераций &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; деление пополам осуществляется &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; раз, поэтому длина конечного отрезка в &amp;lt;math&amp;gt;2^N&amp;lt;/math&amp;gt; раз меньше длины исходного отрезка.&lt;br /&gt;
&lt;br /&gt;
Существует похожий метод, но с критерием останова вычислений &amp;lt;math&amp;gt;\varepsilon_x&amp;lt;/math&amp;gt; по оси &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;&amp;lt;ref&amp;gt;Ю. Губарь, [http://www.intuit.ru/studies/courses/2260/156/lecture/2284?page=2#sect2 Курс &amp;quot;Введение в математическое моделирование&amp;quot; Лекция 4: Численные методы решения нелинейных уравнений]: Метод половинного деления // [[Интуит.ру]], 15.03.2007&amp;lt;/ref&amp;gt;, в этом методе вычисления продолжаются до тех пор, пока, после очередного деления пополам, новый отрезок больше заданной точности по оси &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;: &amp;lt;math&amp;gt;(x_R-x_L)&amp;gt;\varepsilon_x&amp;lt;/math&amp;gt;. В этом методе отрезок на оси &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; может достичь заданной величины &amp;lt;math&amp;gt;\varepsilon_x&amp;lt;/math&amp;gt;, а значения функций &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; (особенно крутых) на оси &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; могут очень далеко отстоять от нуля, при пологих же функциях &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; этот метод приводит к большому числу лишних вычислений.&lt;br /&gt;
&lt;br /&gt;
В дискретных функциях &amp;lt;math&amp;gt;x_L, x_M&amp;lt;/math&amp;gt; и &amp;lt;math&amp;gt;x_R&amp;lt;/math&amp;gt; — это номера элементов массива, которые не могут быть дробными, и, в случае второго критерия останова вычислений, разность &amp;lt;math&amp;gt;(x_R-x_L)&amp;lt;/math&amp;gt; не может быть меньше &amp;lt;math&amp;gt;\varepsilon_x=1&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Псевдокод ==&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Пусть&lt;br /&gt;
* x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; — начало отрезка по х;&lt;br /&gt;
* x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt; — конец отрезка по х;&lt;br /&gt;
* x&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; — середина отрезка по х;&lt;br /&gt;
* eps&amp;lt;sub&amp;gt;y&amp;lt;/sub&amp;gt; — требуемая точность вычислений по y (заданное приближение интервала [x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;; x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt;] : x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt; — x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; к нулю).&lt;br /&gt;
&lt;br /&gt;
Тогда алгоритм метода бисекции можно записать в [[Псевдокод (язык описания алгоритмов)|псевдокоде]] следующим образом:&lt;br /&gt;
&lt;br /&gt;
# Начало.&lt;br /&gt;
#     Ввод x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;, x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt;, eps&amp;lt;sub&amp;gt;y&amp;lt;/sub&amp;gt;.&lt;br /&gt;
#     Если F(x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;) = 0, то Вывод (корень уравнения — x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;).&lt;br /&gt;
#     Если F(x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt;) = 0, то Вывод (корень уравнения — x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt;).&lt;br /&gt;
#     Пока x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt; — x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; &amp;gt; eps&amp;lt;sub&amp;gt;y&amp;lt;/sub&amp;gt; повторять:&lt;br /&gt;
#         dx := (x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt; — x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;)/2;&lt;br /&gt;
#         x&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; := x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; + dx;&lt;br /&gt;
#         если sign(F(x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;)) ≠ sign(F(x&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;)), то x&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt; := x&amp;lt;sub&amp;gt;i;&amp;lt;/sub&amp;gt;&lt;br /&gt;
#         иначе x&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; := x&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;.&lt;br /&gt;
#     конец повторять&lt;br /&gt;
#     Вывод (Найден корень уравнения — x&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; с точностью по y — eps&amp;lt;sub&amp;gt;y&amp;lt;/sub&amp;gt;).&lt;br /&gt;
# Конец.&lt;br /&gt;
&lt;br /&gt;
На языке программирования [[Python]] алгоритм будет выглядеть следующим образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Метод биссекции&lt;br /&gt;
def F(dx):&lt;br /&gt;
    return dx**2 - 6*dx + 8&lt;br /&gt;
xn = 0&lt;br /&gt;
xk = 10&lt;br /&gt;
epsy = 0.01&lt;br /&gt;
print (xn, xk, epsy)&lt;br /&gt;
if F(xn) == 0:&lt;br /&gt;
    print (f&amp;quot;xn&amp;quot;)&lt;br /&gt;
    exit()&lt;br /&gt;
if F(xk) == 0:&lt;br /&gt;
    print (f&amp;quot;xk&amp;quot;)&lt;br /&gt;
    exit()&lt;br /&gt;
while xk - xn &amp;gt; epsy:&lt;br /&gt;
    dx = (xk - xn)/2;&lt;br /&gt;
    xi = xn + dx;&lt;br /&gt;
    if (F(xn)&amp;lt;0 and F(xi)&amp;gt;0)or (F(xn)&amp;gt;0 and F(xi)&amp;lt;0):&lt;br /&gt;
        xk = xi&lt;br /&gt;
    else:&lt;br /&gt;
        xn = xi&lt;br /&gt;
    print (f&amp;quot;Найден корень уравнения — xi: {xi}&amp;quot;)&lt;br /&gt;
    print (f&amp;quot;Найден c точностью по y — epsy: {F(xi)}&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Поиск значения корня монотонной дискретной функции ==&lt;br /&gt;
{{переработать раздел|дата=2012-05-03}}&lt;br /&gt;
Поиск наиболее приближённого к корню значения в монотонной дискретной функции, заданной таблично и записанной в массиве, заключается в разбиении массива пополам (на две части), выборе из двух новых частей той части, в которой значения элементов массива меняют знак путём сравнения знаков срединного элемента массива со знаком граничного значения и повторении алгоритма для половины в которой значения элементов массива меняют знак.&lt;br /&gt;
&lt;br /&gt;
Пусть [[Переменная (программирование)|переменные]] &amp;#039;&amp;#039;леваяГраница&amp;#039;&amp;#039; и &amp;#039;&amp;#039;праваяГраница&amp;#039;&amp;#039; содержат, соответственно, левую &amp;#039;&amp;#039;левГран&amp;#039;&amp;#039; и правую &amp;#039;&amp;#039;правГран&amp;#039;&amp;#039; границы массива, в которой находится приближение к корню. Исследование начинается с разбиения массива пополам (на две части) путём нахождения номера среднего элемента массива &amp;#039;&amp;#039;середина&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Если знаки значений массива &amp;#039;&amp;#039;массив[леваяГраница]&amp;#039;&amp;#039; и &amp;#039;&amp;#039;массив[середина]&amp;#039;&amp;#039; противоположны, то приближение к корню ищут в левой половине массива, то есть значением &amp;#039;&amp;#039;праваяГраница&amp;#039;&amp;#039; становится &amp;#039;&amp;#039;середина&amp;#039;&amp;#039; и на следующей итерации исследуется только левая половина массива.&lt;br /&gt;
Если знаки значений &amp;#039;&amp;#039;массив[леваяГраница]&amp;#039;&amp;#039; и &amp;#039;&amp;#039;массив[середина]&amp;#039;&amp;#039; одинаковы, то осуществляется переход к поиску приближения к корню в правой половине массива, то есть значением переменной &amp;#039;&amp;#039;леваяГраница&amp;#039;&amp;#039; становится &amp;#039;&amp;#039;середина&amp;#039;&amp;#039; и на следующей итерации исследуется только правая половина массива.&lt;br /&gt;
Т.о., в результате каждой проверки область поиска сужается вдвое.&lt;br /&gt;
&lt;br /&gt;
Например, если длина массива равна 1023, то после первого сравнения область сужается до 511 элементов, а после второго — до 255. Т.о. для поиска приближения к корню в массиве из 1023 элементов достаточно 10 проходов (итераций).&lt;br /&gt;
&lt;br /&gt;
[[Псевдокод (язык описания алгоритмов)|Псевдокод]]:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
леваяГраница = левГран&lt;br /&gt;
праваяГраница = правГран&lt;br /&gt;
while (праваяГраница - леваяГраница &amp;gt; 1) {&lt;br /&gt;
   длинаОтрезка = правГран - левГран&lt;br /&gt;
   половинаОтрезка = int(длинаОтрезка / 2) &lt;br /&gt;
   середина = леваяГраница + половинаОтрезка&lt;br /&gt;
   if (sign(массив[леваяГраница]) ≠ sign(массив[середина]))&lt;br /&gt;
      праваяГраница = середина&lt;br /&gt;
   else&lt;br /&gt;
      леваяГраница = середина&lt;br /&gt;
}&lt;br /&gt;
printf середина&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== См. также ==&lt;br /&gt;
* [[Линейный поиск]]&lt;br /&gt;
* [[Двоичный поиск]]&lt;br /&gt;
* [[Метод дихотомии]]&lt;br /&gt;
* [[Метод золотого сечения]]&lt;br /&gt;
* [[Троичный поиск]]&lt;br /&gt;
* [[Метод Ньютона]]&lt;br /&gt;
&lt;br /&gt;
== Примечания ==&lt;br /&gt;
{{примечания}}&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
* {{книга |автор=Волков Е. А. |заглавие=Численные методы |издание=Учеб. пособие для вузов. — 2-е изд., испр. |место={{М.}} |издательство=Наука |год=1987 |страниц=248 |часть=Глава 4. Методы решения нелинейных уравнений и систем. § 26. Метод деления отрезка пополам |страницы=190}}&lt;br /&gt;
* {{Citation | last1=Burden | first1=Richard L. | last2=Faires | first2=J. Douglas | title=Numerical Analysis | publisher=PWS Publishers | edition=3rd | isbn=0-87150-857-5 | year=1985 | chapter=2.1 The Bisection Algorithm | url-access=registration | url=https://archive.org/details/numericalanalys00burd }}&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
{{Викиучебник|Программные реализации метода бисекции|Программные реализации метода бисекции}}&lt;br /&gt;
&lt;br /&gt;
*[http://twt.mpei.ac.ru/mas/worksheets/Bisection.mcd Метод бисекции] на сервере применения Mathcad.&lt;br /&gt;
* [http://numericalmethods.eng.usf.edu/topics/bisection_method.html Метод бисекции] Mathcad, Maple, Matlab, Mathematica&lt;br /&gt;
* [https://web.archive.org/web/20130429005222/http://isoelectric.ovh.org/ Использование метода бисекции в программировании] свободно распространяемая программа для вычисления [[изоэлектрическая точка|изоэлектрической точки]].&lt;br /&gt;
&lt;br /&gt;
[[Категория:Численные методы решения уравнений]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Eoan Ermine</name></author>
	</entry>
</feed>