IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Эпициклоида
Client
сообщение 31.10.2008 9:43
Сообщение #1


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

Репутация: -  20  +


Привет!
Вот мой вариант
procedure epicikl;
Var
   s:string;
   a,b,x,i:integer;
   t,x1,y1:real;
Begin
     t:=0;
     read(x);
     read(a);
     read(b);
     cleardevice;
     setcolor(red);
     line(1,240,640,240);
     line(320,1,320,480);
     outtextxy(325,245,'0');
     outtextxy(617,260,'X');
     outtextxy(330,10,'Y');
     line(630,245,640,240);
     line(630,235,640,240);
     line(315,5,320,0);
     line(325,5,320,0);
     setTextJustIfY(1,2);
     setTextStyle(0,0,1);
     for i:=1 to 320 div x do begin
         line(320+i*x,230,320+i*x,250);
         str(i,s);
         outtextxy(322+i*x,251,s);
     end;
     for i:=1 to 320 div x do begin
         line(320-i*x,230,320-i*x,250);
         str(-i,s);
         outtextxy(318-i*x,251,s);
     end;
     settextjustify(1,1);
     for i:=1 to 240 div x do begin
         line(310,240-i*x,330,240-i*x);
         str(i,s);
         outtextxy(305,240-i*x,s);
     end;
     for i:=1 to 240 div x do begin
         line(310,240+i*x,330,240+i*x);
         str(-i,s);
         outtextxy(338,241+i*x,s);
     end;
     t:=0;
     while t<=2*pi do begin
           t:=t+pi/3500;
           x1:=(a+b)*cos(t)-a*cos((a+b)*t/a);
           y1:=(a+b)*sin(t)-a*sin((a+b)*t/a);
           putpixel(320+round(x1*x/20),240+round(y1*x/20),7);
           delay(50)
     end;
     readkey;
end;
Что надо изменить, подскажите плиз

Сообщение отредактировано: Client - 31.10.2008 9:46
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 27.07.2025 22:13
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"