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

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

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

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

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

textual
Листинг программы
uses graphABC;
function F(x:real):real;
begin
F:=tan(x);
end;
var xn,xk,mx,my,dx:real;
    x:real;
    x0,y0,i:integer;
begin
xn:=-2*pi;xk:=2*pi;//интервал по Х
x0:=windowwidth div 2;
mx:=(x0-30)/xk;//масштаб по Х
y0:=windowheight div 2;
my:=(y0-20)/10;//по У
line(0,y0,windowwidth,y0);//оси
line(x0,0,x0,windowheight);
for i:=1 to 10 do//максимальное количество засечек в одну сторону
  begin
   line(x0-3,y0-round(i*my),x0+3,y0-round(i*my));//засечки на оси У
   line(x0-3,y0+round(i*my),x0+3,y0+round(i*my));
   line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3);//засечки на оси Х
   line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3);
   {подпись оси У}
   textout(x0-35,y0-round(i*my),inttostr(i));//соответственно засечкам
   textout(x0-35,y0+round(i*my),inttostr(-i));
   {подпись оси Х}
   textout(x0+round(i*mx),y0+10,inttostr(i));
   textout(x0-round(i*mx),y0+10,inttostr(-i));
  end;
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-10,'X');
textout(x0+5,10, 'Y');
//график
x:=xn;
dx:=0.001;
while x<=xk do
 begin
  if abs(cos(x))>0.1 then
  setpixel(x0+round(x*mx),y0-round(F(x)*my),clGreen);
  x:=x+dx;
 end;
{название}
textout(x0+50,20,'График функции y=tgx');
textout(x0+50,40,'на интервале [-2pi;2pi]');
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
Похожие ответы