Вывести на экран точечный график функции - Turbo Pascal

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

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

Написать программу, которая выводит на экран точечный график функции у =ctg7 x. Диапазон изменения аргумента — от -3 до 6, шаг аргумента — 0,1. График вывести на фоне координатных осей, точка пересечения которых должна находиться в центре экрана

Решение задачи: «Вывести на экран точечный график функции»

textual
Листинг программы
  1. uses graph;
  2. function F(x:real):real;
  3. begin
  4. F:=cos(x)/sin(x);
  5. end;
  6. var xn,xk,max,mx,my,dx,y1:real;
  7.     x:real;
  8.     x0,y0,i:integer;
  9.     s:string;
  10. begin
  11. x0:=0;
  12. initgraph(x0,y0,'');
  13. xn:=-3;xk:=6;{интервал по Х}
  14. x0:=getmaxX div 3;
  15. mx:=(x0-30)/-xn;{масштаб по Х}
  16. y0:=getmaxY div 2;
  17. my:=(y0-50)/10;{по У}
  18. line(0,y0,getmaxX,y0);{оси}
  19. line(x0,0,X0,getmaxY);
  20. for i:=1 to 10 do{максимальное количество засечек в одну сторону}
  21.   begin
  22.    str(i,s);
  23.    if i mod 2=0 then
  24.     begin
  25.      line(x0-3,y0-round(i*my),x0+3,y0-round(i*my));{засечки на оси У}
  26.      line(x0-3,y0+round(i*my),x0+3,y0+round(i*my));
  27.      outtextXY(x0-35,y0-round(i*my),s);{подписи соответственно засечкам}
  28.      outtextXY(x0-35,y0+round(i*my),'-'+s);
  29.     end;
  30.    line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
  31.    line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3);
  32.    outtextXY(x0+round(i*mx),y0+10,s);
  33.    outtextXY(x0-round(i*mx),y0+10,'-'+s);
  34.   end;
  35. {центр}
  36. outtextXY(x0+5,y0+10,'0');
  37. {подписи концов осей}
  38. outtextXY(getmaxX-10,y0-10,'X');
  39. outtextXY(x0+5,10, 'Y');
  40. {график}
  41. x:=xn;
  42. dx:=0.1;
  43. setcolor(10);
  44. setfillstyle(1,10);
  45. while x<=xk do
  46.  begin
  47.   if abs(sin(x))>0.01 then
  48.   fillellipse(x0+round(x*mx),y0-round(F(x)*my),1,1);
  49.   x:=x+dx;
  50.  end;
  51. {название}
  52. outtextXY(x0+50,0,'Grafik functii y=ctgx');
  53. outtextXY(x0+50,20,'na intervale [-3;6]');
  54. readln
  55. end.

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

  1. Используется библиотека graph для создания точечного графика функции.
  2. Функция F(x) представляет собой косинус от x, деленный на синус x.
  3. Переменные xn, xk, max, mx, my, dx, y1 используются для настройки параметров графика.
  4. Переменные x0, y0, i, s используются для установки начальных значений x, y, номера засечек и подписи осей.
  5. Цикл while используется для построения графика функции от x = -3 до x = 6 с шагом dx.
  6. Если abs(sin(x)) больше 0.01, то строится эллипс на графике.
  7. Название графика выводится на экран с помощью функции outtextXY.
  8. Дополнительная информация выводится с помощью функции outtextXY.
  9. График функции y = ctgx будет построен на интервале [-3;6].

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


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

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

14   голосов , оценка 4.071 из 5

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

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

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