Построить графики функций: в параметрической форме - Pascal ABC
Формулировка задачи:
x= a (t-sin t)
y= a (1 -cos t) , 0 <=t<=2пи
Решение задачи: «Построить графики функций: в параметрической форме»
textual
Листинг программы
uses Crt,GraphABC; var a,c,x0,y0,i,x,y:integer; t,m:real; begin repeat write('Введите параметр а от 1 до 3 a='); readln(a); until a in [1..3]; clrscr; hidecursor; setwindowsize(800,400); centerwindow; //начало координат x0:=50; y0:=350; m:=(windowwidth-2*x0)/a/2/pi;//масштаб //оси line(x0,y0,windowwidth,y0); textout(windowwidth-20,y0-20,'X'); line(x0,0,x0,y0); textout(x0+5,0,'Y'); textout(x0+5,y0+10,'0'); //засечки и подписи по осям for i:=1 to trunc(2*pi*a)+1 do //if i mod 2=0 then begin line(x0+round(i*m),y0-3,x0+round(i*m),y0+3); textout(x0+round(i*m),y0+10,inttostr(i)); line(x0-3,y0-round(i*m),x0+3,y0-round(i*m)); textout(x0-25,y0-round(i*m)-5,inttostr(i)); end; //гоафик setpencolor(clBlue); t:=0; while t<=2*pi do begin x:=x0+round(a*(t-sin(t))*m); y:=y0-round(a*(1-cos(t))*m); if t=0 then moveto(x,y) else lineto(x,y); t:=t+0.01; end; textout(350,0,'График циклоиды'); textout(360,20,'x=a(t-sin(t))'); textout(360,40,'y=a(1-cos(t))'); textout(360,60,'a='+inttostr(a)+' t=[0..2pi]'); end.
Объяснение кода листинга программы
- Объявление переменных: a, c, x0, y0, i, x, y, t, m - тип integer; a, c, m - тип real.
- Повторяющийся блок: ввод значения параметра a от 1 до 3.
- Очистка экрана и скрытие курсора.
- Установка размера окна 800x400 и его центровка.
- Начальные координаты (x0,y0).
- Расчет масштаба (m) для осей координат.
- Отображение осей координат (горизонтальной и вертикальной).
- Отображение засечек и подписей по осям.
- График циклоиды: синусоида от 0 до 2π с шагом 0.01.
- Координаты (x,y) на графике циклоиды.
- Отображение текста с описанием графика и формулами.
- Завершение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д