Вычислить значения y, соответствующие каждому значению x - PascalABC.NET

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

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

Вычислить значения y, соответствующие каждому значению x (xn≤x≤xk, dx) по формуле: y=e−xsin(x),∣x∣≤a e−x2cos(x),∣x∣>a Найти максимальное и минимальное значение у. Входные данные: xn, xk, dx, a. Выходные данные: множество значений у, ymax — максимальное значение у, ymin — минимальное значение у.

Решение задачи: «Вычислить значения y, соответствующие каждому значению x»

textual
Листинг программы
function y(a,x:real):real;
begin
if abs(x)<=a then y:=exp(-x*sin(x))
else y:=exp(-x*x*cos(x))
end;
var a,xn,xk,dx,x,ymax,ymin:real;
begin
write('a=');
readln(a);
write('Введите начало интервала xn=');
readln(xn);
repeat
write('Введите конец интервала xk>',xn:0:1,' xk=');
readln(xk);
until xk>xn;
repeat
write('Ввкдите шаг табуляции dx<',xk-xn:0:1,' dx=');
readln(dx);
until dx<xk-xn;
x:=xn;
ymax:=y(a,x);
ymin:=y(a,x);
while x<xk+dx/2 do
 begin
  writeln('x=',x:5:2,'  y=',y(a,x):6:2);
  if y(a,x)>ymax then ymax:=y(a,x)
  else if y(a,x)<ymin then ymin:=y(a,x);
  x:=x+dx;
 end;
writeln('ymin=',ymin:0:2);
write('ymax=',ymax:0:2);
end.

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

  1. Функция y(a,x) принимает два аргумента типа real: a и x.
  2. Если abs(x)<=a, то возвращает exp(-xsin(x)), иначе возвращает exp(-xx*cos(x)).
  3. В основной программе объявлены следующие переменные: a, xn, xk, dx, x, ymax, ymin — реальные переменные.
  4. Пользователю предлагается ввести значения a и интервала (xn, xk) для вычисления функции y.
  5. Используется цикл repeat-until для повторного запроса ввода корректного значения xk.
  6. Используется цикл repeat-until для повторного запроса ввода корректного значения dx.
  7. Переменная x инициализируется значением xn.
  8. Вычисляются значения ymax и ymin для начального значения x.
  9. Используется цикл while для вычисления и вывода значений x и y на каждой итерации.
  10. Если значение y на текущей итерации больше ymax, то обновляется ymax.
  11. Если значение y на текущей итерации меньше ymin, то обновляется ymin.
  12. Значение x увеличивается на dx после каждой итерации.
  13. По завершении цикла выводятся значения ymin и ymax.

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


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

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

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