Реализовать численный метод поиска корней нелинейного уравнения - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Реализовать численный метод поиска корней нелинейного уравнения с точностью e=0.01 уравнения 2*x^5+12=0 методом Ньютона

Решение задачи: «Реализовать численный метод поиска корней нелинейного уравнения»

textual
Листинг программы
  1. const e=0.01;
  2. //функция
  3. function F(x:real):real;
  4. begin
  5. F:=2*x*x*x*x*x+12;
  6. end;
  7. //первая производная
  8. function F1(x:real):real;
  9. begin
  10. F1:=10*x*x*x*x;
  11. end;
  12. var x,b:real;
  13. begin
  14. //простой метод Ньютона
  15. x:=1;
  16. repeat
  17. b:=x;
  18. x:=b-F(b)/F1(b);
  19. until abs(x-b)<e;
  20. write('X=',x:0:2);
  21. end.

Объяснение кода листинга программы

  1. В первой строке объявляется константа e, которая представляет собой малую десятичную дробь и используется для определения точности вычислений.
  2. Затем объявляются функции F и F1. Функция F принимает один аргумент x типа real и возвращает значение выражения 2xxxx+12. Функция F1 также принимает один аргумент x типа real и возвращает значение выражения 10xx*x.
  3. Далее объявляются две переменные типа real x и b. Переменная x инициализируется значением 1.
  4. Затем начинается цикл repeat, который выполняется до тех пор, пока абсолютное значение разности между текущим значением x и предыдущим значением b не станет меньше e.
  5. Внутри цикла переменная b инициализируется значением x.
  6. Затем переменная x инициализируется значением b минус результат деления F(b) на F1(b).
  7. После выхода из цикла выводится сообщение X=, за которым следует значение переменной x, округленное до двух десятичных знаков.
  8. Конец программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.692 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут