Thursday, January 9, 2020

ЛР10 Программирование (1.7 В21) - III

III. Программа Pascal
Program Lab10;
var A,B,E,X: real;
function f(X:real): real;
begin
    f:=ln(20/sqrt(0.009))-1.5*(exp(X/3)+exp(-X/3))-X;
end;
begin
    writeln('Лаб.10':38);
    write('Начало отрезка A: '); 
    readln(A); writeln(A:5:2);
    write('Конец отрезка B: '); 
    readln(B); writeln(B:5:2);
    write('Минимальная длина отрезка E: '); 
    readln(E); writeln(E:5:4);
    writeln('Шаги итерации');
    if ((f(A)>=0) and (f(B)>=0)) or ((f(A)<0) and (f(B)<0)) then
        writeln('Невозможно найти корень уравнения указанным методом')
    else
    begin
        while B-A>=E do
        begin
            X:=A+(B-A)/2;
            writeln(f(A):7:5,' ',f(X):7:5,' ',f(B):7:5);
            if f(X)=0 then break;
            if ((f(A)>0) and (f(X)>0)) or ((f(A)<0) and (f(X)<0)) then
                A:=X
            else B:=X;
        end;
        writeln('Корень уравнения: ',X:7:5);
    end;
end.


STDIN
0
2
0.0001



No comments:

Post a Comment