profile
Опубликовано 5 лет назад по предмету Информатика от juravlev19991556

Помогите исправить программу ,не кампилирует.Даю 30 баллов!!!!!!!!!!



begin

var f:real->real:=x-> 0.1*(sin(x)/cos(x))(0.1*x+0,0025*x*x); ;
var (a,b):=ReadReal2('Введите границы интервала:');
var (fa,fb):=(f(a),f(b));
var eps:=ReadReal('Введите требуемую точность:');
var n:=1;
Writeln(' n',12*' ','x',14*' ','y');
while True do begin
var x:=(a+b)/2;
var y:=f(x);
if (Abs(y) Writeln(n:3,x:15:6,y:15:6);
if Sign(fa)=Sign(y) then a:=x else b:=x;
n+=1
end
end.

  1. Ответ
    Ответ дан petyaGavrikov

    begin

    var f:real->real:=x-> 0.1*(sin(x)/cos(x))*(0.1*x+0.0025*x*x);

    var (a,b):=ReadReal2('Введите границы интервала:');

    var (fa,fb):=(f(a),f(b));

    var eps:=ReadReal('Введите требуемую точность:');

    var n:=1;

    var y:real;

    Writeln(' n',12*' ','x',14*' ','y');  

    repeat

     var x:=(a+b)/2;

     y:=f(x);

     Writeln(n:3,x:15:6,y:15:6);

     if Sign(fa)=Sign(y) then a:=x else b:=x;

     n+=1

    until Abs(y)<eps;

    end.

    Пример:

    Введите границы интервала: -1 0

    Введите требуемую точность: 0.00001

    n            x              y

     1      -0.500000       0.002697

     2      -0.250000       0.000634

     3      -0.125000       0.000157

     4      -0.062500       0.000039

     5      -0.031250       0.000010

Самые новые вопросы