Advertisement
Guest User

Untitled

a guest
Nov 26th, 2015
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. program ITERAT;
  2.  
  3. function Root3(X: Real): Real; { кубический корень }
  4. begin
  5. if X = 0.0 then
  6. Root3 := 0.0
  7. else if X > 0.0 then
  8. Root3 := Exp(Ln(X) / 3)
  9. else
  10. Root3 := -Exp(Ln(-X) / 3)
  11. end;
  12.  
  13. function F(x:real):real; {функция}
  14. begin
  15. F := ln(x) + sqrt(3.73) - Root3((x-1)*(x-1));
  16. end;
  17.  
  18. var
  19. x0, x1, eps : real;
  20. i: integer; { счётчик итераций }
  21. min, max: real; { Границы отрезка }
  22. error: boolean;
  23.  
  24. begin
  25. min:=0;
  26. max:=2;
  27. eps:=0.0001;
  28. i := 0;
  29. x1 := (min + max)/2;
  30. error := false;
  31. repeat
  32. writeln(i, '. x = ', x1:8:5);
  33. x0 := x1;
  34. x1 := F(x0);
  35. i:= i + 1;
  36. if (x0 < min) or (x0 > max) then begin
  37. error := true;
  38. break;
  39. end;
  40. until (abs(x0 - x1) < eps) and (x1 >= 0);
  41. if error then
  42. writeln('Ответ не найден.')
  43. else begin
  44. writeln('Ответ: ', x1:8:5);
  45. writeln('Итераций пройдено: ', i);
  46. end;
  47. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement