Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program ITERAT;
- function Root3(X: Real): Real; { кубический корень }
- begin
- if X = 0.0 then
- Root3 := 0.0
- else if X > 0.0 then
- Root3 := Exp(Ln(X) / 3)
- else
- Root3 := -Exp(Ln(-X) / 3)
- end;
- function F(x:real):real; {функция}
- begin
- F := ln(x) + sqrt(3.73) - Root3((x-1)*(x-1));
- end;
- var
- x0, x1, eps : real;
- i: integer; { счётчик итераций }
- min, max: real; { Границы отрезка }
- error: boolean;
- begin
- min:=0;
- max:=2;
- eps:=0.0001;
- i := 0;
- x1 := (min + max)/2;
- error := false;
- repeat
- writeln(i, '. x = ', x1:8:5);
- x0 := x1;
- x1 := F(x0);
- i:= i + 1;
- if (x0 < min) or (x0 > max) then begin
- error := true;
- break;
- end;
- until (abs(x0 - x1) < eps) and (x1 >= 0);
- if error then
- writeln('Ответ не найден.')
- else begin
- writeln('Ответ: ', x1:8:5);
- writeln('Итераций пройдено: ', i);
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement