Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методи обчислень модуль1.doc
Скачиваний:
1
Добавлен:
04.12.2018
Размер:
487.94 Кб
Скачать

Лабораторна робота №1

  • Відокремити корені рівняння f(x) = 0 графічно. Для побудови графіків функції використати пакети програм Gran або Visual Calculus.

  • Уточнити корені на кожному з відрізків локалізації, скориставшись одним з наближених методу: половинного ділення.

Метод половинного ділення

+ -

+ -

+ -

Локалізовані корені: X1Є[0;1]; x2Є[3,5;4,5]

Код програми:

program polovin;

uses crt;

var a,b,x,E:Real;

label 10;

function f(x:Real):real;

begin

F:=exp(ln(2)*x)-4*x;

end;

begin

clrscr;

writeln('vvedite kinci promizhku a,b');

readln(a,b);

Writeln('vedite tochnistj obchuslennya E');

Readln(E);

While (b-a)>=2*E do

begin

x:=(a+b)/2;

if f(x)=0 then

goto 10

else

begin

if f(a)*f(x)<0 then b:=x

else a:=x;

end;

end;

x:=(a+b)/2;

10: writeln(x:0:5,'- Koronj rivnjannja');

writeln('yaksho nastupne chislo prubluzno dorivnjue 0, todi rovyazok virnuy');

writeln(f(X):2:4);

readln;

end.

Локалізовані корені:

X1Є[-2,5;-2] X2Є[-1;1] X3Є[2;2,5]

Код програми:

program polovin;

uses crt;

Var a,b,X,e:Real;

label 10;

function f(x:Real):real;

begin

F:=x*x*x-5*x+0.1;

end;

begin

clrscr;

writeln('vvedite kinci promizhku a,b');

readln(a,b);

Writeln('vedite tochnistj obchuslennya E');

Readln(E);

While (b-a)>=2*E do

begin

x:=(a+b)/2;

if f(x)=0 then

goto 10

else

begin

if f(a)*f(x)<0 then b:=x

else a:=x;

end;

end;

x:=(a+b)/2;

10: writeln(x:0:5,'- Koronj rivnjannja');

writeln('yaksho nastupne chislo prubluzno dorivnjue 0, todi rovyazok virnuy');

writeln(f(X):2:4);

readln;

end.

Локалізовані корені:

x1Є[-1;0]; x2Є[1;1,5];

Домашня робота:

2xlnx-4=0

Локальний корінь: x1Є[2,2,5];