Декартов Лист. - Pascal
Формулировка задачи:
Люди пожалуйста,очень прошу помогите!!!!вот задача:
Декартов лист. X = 3*a*tg(t)/(1+tg3t);
Y= 3*a*tg2t/(1+tg3t);
Точка пересечения осей координат должны располагаться в центре экрана. Затем
Получить еще 3 изображения кривой осуществив поворот относительно начала координат на π/2, 3π /2, - π/2 радиан. Залить изображения редкими точками.
Пожалуйстаааааааааааа помогите (((((((((
Решение задачи: «Декартов Лист.»
textual
Листинг программы
fi:=0;{начальный угол} while fi<=pi/2 do{если fi<=pi/2 будут лепестки без усиков} begin t:=sin(fi)/cos(fi);{тангенс} x:=x0+kx*round(3*a*t/(1+t*t*t));{координата х} y:=y0+ky*round(3*a*t*t/(1+t*t*t));{у} if cos(fi)<>0 then Putpixel(x,y,12);{рисуем точками красного цвета} fi:=fi+0.001;{наращиваем угол в радианах} end;
Объяснение кода листинга программы
- fi := 0; - начальный угол
- while fi <= pi/2 do - условие продолжения цикла, пока угол не превысит π/2 (это предел для лепестков без усиков)
- t := sin(fi) / cos(fi); - тангенс угла fi
- x := x0 + kx round(3 a t / (1 + t t * t)); - координата x
- y := y0 + ky round(3 a t t / (1 + t t t)); - координата y
- if cos(fi) <> 0 then - если значение cos(fi) не равно нулю
- Putpixel(x, y, 12); - рисуем точку с координатами x и y, используя цвет 12 (красный)
- fi := fi + 0.001; - наращиваем угол в радианах на 0.001
- end; - конец цикла
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д