Нарисовать график тангенса без асимптот - PascalABC.NET

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

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

помогите пожалуйста. нужно сделать так чтобы график был без асимптот

Решение задачи: «Нарисовать график тангенса без асимптот»

textual
Листинг программы
  1. uses graphABC;
  2. function F(x:real):real;
  3. begin
  4. F:=tan(x);
  5. end;
  6. var xn,xk,mx,my,dx:real;
  7.     x:real;
  8.     x0,y0,i:integer;
  9. begin
  10. xn:=-2*pi;xk:=2*pi;//интервал по Х
  11. x0:=windowwidth div 2;
  12. mx:=(x0-30)/xk;//масштаб по Х
  13. y0:=windowheight div 2;
  14. my:=(y0-20)/10;//по У
  15. line(0,y0,windowwidth,y0);//оси
  16. line(x0,0,x0,windowheight);
  17. for i:=1 to 10 do//максимальное количество засечек в одну сторону
  18.   begin
  19.    line(x0-3,y0-round(i*my),x0+3,y0-round(i*my));//засечки на оси У
  20.    line(x0-3,y0+round(i*my),x0+3,y0+round(i*my));
  21.    line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3);//засечки на оси Х
  22.    line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3);
  23.    {подпись оси У}
  24.    textout(x0-35,y0-round(i*my),inttostr(i));//соответственно засечкам
  25.    textout(x0-35,y0+round(i*my),inttostr(-i));
  26.    {подпись оси Х}
  27.    textout(x0+round(i*mx),y0+10,inttostr(i));
  28.    textout(x0-round(i*mx),y0+10,inttostr(-i));
  29.   end;
  30. {центр}
  31. textout(x0+5,y0+10,'0');
  32. {подписи концов осей}
  33. textout(windowwidth-10,y0-10,'X');
  34. textout(x0+5,10, 'Y');
  35. //график
  36. x:=xn;
  37. dx:=0.001;
  38. while x<=xk do
  39.  begin
  40.   if abs(cos(x))>0.1 then
  41.   setpixel(x0+round(x*mx),y0-round(F(x)*my),clGreen);
  42.   x:=x+dx;
  43.  end;
  44. {название}
  45. textout(x0+50,20,'График функции y=tgx');
  46. textout(x0+50,40,'на интервале [-2pi;2pi]');
  47. end.

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

  1. Используемая библиотека: В коде используется библиотека GraphABC.Net.
  2. Функция F(x): Функция F(x) принимает аргумент x типа real и возвращает значение тангенса этого аргумента.
  3. Переменные:
    • xn, xk, mx, my, dx: real;
    • x: real;
    • x0, y0, i: integer;
  4. Оси и засечки: Код рисует оси X и Y, а также добавляет засечки на этих осях с интервалом в 10 единиц.
  5. Центр и подписи концов осей: Код рисует точку в центре графика и подписывает концы осей X и Y.
  6. График: Код создает график функции y=tgx на интервале [-2pi;2pi]. Он начинает с точки (-2pi,0), затем последовательно проверяет точки на интервале, рисуя зеленый пиксель, если значение функции больше 0.1. Затем он переходит к следующей точке, увеличивая x на dx (по умолчанию равное 0.001).
  7. Название: Код добавляет название График функции y=tgx и подпись на интервале [-2pi;2pi]. Список выполненных действий:
  8. Объяснение использования библиотеки GraphABC.Net.
  9. Объяснение функции F(x).
  10. Перечисление и объяснение переменных.
  11. Описание процесса рисования осей и засечек.
  12. Описание процесса рисования центра и подписей концов осей.
  13. Описание процесса создания графика функции.
  14. Добавление названия и подписи к графику.

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


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

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

6   голосов , оценка 4.333 из 5

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

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

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