Написать блок-схему и программу вычисления функции на за- данном промежутке с шагом 0.2 и построить график это - Pascal ABC

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

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

Помогите с решением. Написать блок-схему и программу вычисления функции на заданном промежутке с шагом 0.2 и построить график этой функции.

Решение задачи: «Написать блок-схему и программу вычисления функции на за- данном промежутке с шагом 0.2 и построить график это»

textual
Листинг программы
uses crt,graphABC;
const a=-1;
      b=3;
      h=0.2;
function f(x:real):real;
begin
if x<0 then f:=exp(-cos(3*x))
else if x<=1.5 then f:=2*x*x*sqrt(abs(cos(2*x)))
else f:=x;
end;
var x0,y0,i:integer;
    x,max,mx,my:real;
begin
x:=a;
max:=f(x);
while x<b+h/2 do
 begin
  writeln('x=',x:4:1,'  y=',f(x):6:3);
  if f(x)>max then max:=f(x);
  x:=x+h;
 end;
write('Нажмите Enter для просмотра графика');
readln;
hidecursor;
clearwindow;
x0:=windowwidth div 4;
y0:=windowheight-50;
mx:=(windowwidth-x0-30)/3;
my:=(y0-30)/max;
line(0,y0,windowwidth-10,y0);
line(x0,y0,x0,10);
textout(windowwidth-20,y0-20,'X');
textout(x0+5,10,'Y');
textout(x0+2,y0+5,'0');
for i:=1 to 8 do
 begin
  line(x0+round(i*mx/2),y0-3,x0+round(i*mx/2),y0+3);
  textout(x0+round(i*mx/2),y0+5,floattostr(i/2));
  line(x0-round(i*mx/2),y0-3,x0-round(i*mx/2),y0+3);
  textout(x0-round(i*mx/2),y0+5,floattostr(-i/2));
  line(x0-3,y0-round(i*my/2),x0+3,y0-round(i*my/2));
  textout(x0-25,y0-round(i*my/2),floattostr(i/2));
 end;
x:=a;
while x<=b do
 begin
  setpixel(x0+round(x*mx),y0-round(f(x)*my),clred);
  x:=x+0.001;
 end;
setpencolor(clgreen);
line(x0+round(1.5*mx),y0,x0+round(1.5*mx),0);
end.

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

  1. Используется библиотека crt и графический модуль graphABC.
  2. Задаются константы a, b, h — они не меняются в процессе выполнения программы.
  3. Определяется функция f(x), которая вычисляет значение функции на заданном промежутке с шагом h. Если x меньше нуля, то возвращается exp(-cos(3x)), иначе если x не больше 1.5, то возвращается 2xxsqrt(abs(cos(2*x))), в противном случае возвращается x.
  4. Определяются переменные x, max, mx, my — они используются для построения графика.
  5. Задается начальное значение x равное a.
  6. Вычисляется максимальное значение функции f(x) с помощью цикла while.
  7. Строится график функции с использованием функций line и textout.
  8. Строятся линии и выводятся текстовые метки для каждого отрезка графика.
  9. Выводится текст Нажмите Enter для просмотра графика.
  10. Скрывается курсор и очищается окно.
  11. Задаются начальные координаты для построения графика x0, y0, i — они не меняются в процессе выполнения программы.
  12. Вычисляется максимальное значение функции f(x) с помощью цикла while.
  13. Строится график функции с использованием функций line и textout.
  14. Строятся линии и выводятся текстовые метки для каждого отрезка графика.
  15. Выводится текст Нажмите Enter для просмотра графика.
  16. Скрывается курсор и очищается окно.
  17. Задаются начальные координаты для построения графика x0, y0, i — они не меняются в процессе выполнения программы.
  18. Вычисляется максимальное значение функции f(x) с помощью цикла while.
  19. Строится график функции с использованием функций line и textout.
  20. Строятся линии и выводятся текстовые метки для каждого отрезка графика.

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


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

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

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