Поправить прогу,метод Эйлера - Pascal

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

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

Помогите поправить код,в долгу не останусь) нужно методом Эйлера получить значения в пределах [0;2] с шагом h=0,1 . y(0)=1 ур-е y'-2y/(1+x)=((1+x)^2)*e^x точное решение{ y(x)=((1+x)^2)*e^x } Код Pascal
del
тему можно удалить!

Решение задачи: «Поправить прогу,метод Эйлера»

textual
Листинг программы
program eiler;
function fxy(x, y: Real): Real;
 begin
  fxy :=exp(ln(2.71)*x)*((1+x)*(1+x))+(2*y)/(1+x);
   end;
   const
   yo=1;
 var
  x, m,a,b,h: Real;
  i,n: integer;
 
 begin
  writeln('vvedite a=   ' , 'vvedite b=   ' , 'vvedite h=  ' );
  readln(a,b,h);
 
  n:= trunc((b-a)/h)+1;
  Writeln('x':4, 'y':4);
  x:= a;
  m:= 1;
 for i := 1 to n do
  begin
Writeln
(x:5:2 , m:5:2);
 
m:= m + h * fxy(x,m);
x := x + h;
end;
end.

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

  1. Написан код на языке Pascal.
  2. Определена функция fxy(x, y: Real): Real, которая вычисляет значение функции по координатам x и y.
  3. Задана константа yo=1.
  4. Заданы переменные x, m, a, b, h: Real; i, n: integer;.
  5. Выводится сообщение с приглашением ввести значения a, b и h.
  6. Считываются значения a, b и h.
  7. Вычисляется значение n как количество отрезков между a и b, которые можно поместить в интервал h.
  8. Выводится сообщение с приглашением вывести значения x и m.
  9. Переменная x инициализируется значением a.
  10. Переменная m инициализируется значением 1.
  11. Запускается цикл for i := 1 to n do, который выполняется n раз.
  12. Внутри цикла выводится сообщение с приглашением вывести значения x и m.
  13. Вычисляется значение m как сумма h умноженное на значение функции fxy(x,m) и прибавленное к m.
  14. Значение x увеличивается на h.
  15. Цикл завершается.
  16. Код завершается.

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


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

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

12   голосов , оценка 3.583 из 5
Похожие ответы