Программа решения уравнения методом бисекции - Turbo Pascal
Формулировка задачи:
f(x)=x^3 -0,2 x^2 +0,5x+1,5 , a=-1, b=0 , eps := 0,0001
Решение задачи: «Программа решения уравнения методом бисекции»
textual
Листинг программы
uses crt; function F(x:real):real; begin F:=x*x*x-0.2*x*x+0.5*x+1.5; end; const eps=0.0001; var a,b,c,x:real; begin clrscr; writeln('Решение уравнения x^3-0.2x^2+0.5x+1.5=0'); writeln('на интервале [-1;0] с погрешностью 0.0001'); a:=-1; b:=0; repeat c:=(a+b)/2; if F(a)*F(c)<=0 then b:=c else a:=c; until abs(b-a)<eps; x:=(a+b)/2; writeln('x=',x:0:4); readln end.
Объяснение кода листинга программы
- Подключается библиотека crt.
- Определяется функция F, которая вычисляет значение уравнения методом бисекции.
- Определяется константа eps, которая представляет собой погрешность вычислений.
- Определяются переменные a, b, c и x, которые используются для вычисления значения уравнения.
- Выводится сообщение о решении уравнения на интервале [-1;0] с погрешностью 0.0001.
- Задаются начальные значения переменных a и b.
- Запускается цикл repeat, который выполняется до тех пор, пока разница между значениями a и b не станет меньше eps.
- В каждой итерации цикла вычисляется среднее значение переменных a и b, и сохраняется в переменной c.
- Если произведение значений функций F(a) и F(c) меньше или равно нулю, то значение переменной b устанавливается равным значению c.
- В противном случае, значение переменной a устанавливается равным значению c.
- После завершения цикла, вычисляется среднее значение переменных a и b, и сохраняется в переменной x.
- Выводится сообщение с найденным значением x.
- Программа завершается, ожидая ввода пользователя.