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

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

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

 
 Ответить  Открыть новую тему 
> графика, нужно доделать
сообщение
Сообщение #1


Пионер в программировании
**

Группа: Пользователи
Сообщений: 66
Пол: Мужской

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


помогите переделать написану мной программу. чтобы я мог ввести радиус и 5угольник менялся с нем
program z2;
uses crt, graph;
var dr,mode,i,n,r:integer;
begin
randomize;
dr:=detect; mode:=0;
initgraph(dr,mode,'c:\tp\bgi');
circle(300,240,50);
moveto(300,190);
lineto(350,230);
lineto(225,283);
lineto(275,283);
lineto(250,230);
lineto(300,190);
r:=0;
n:=2;
for i:=0 to 70 do
begin
delay(45000);
if i=r then
if n=1 then begin
cleardevice;
circle(300,240,50);
setfillstyle(1,random(r+1));
floodfill(290,192,white);
moveto(300,190);
lineto(350,230);
lineto(325,283);
lineto(275,283);
lineto(250,230);
lineto(300,190);
setfillstyle(1,random®);
floodfill(300,240,white);
n:=2;r:=r+10;
end
else
if n=2 then begin
cleardevice;
circle(300,240,50);
setfillstyle(1,random®);
floodfill(290,192,white);
moveto(300,290);
lineto(255,260);
lineto(270,200);
lineto(330,200);
lineto(345,260);
lineto(300,290);
setfillstyle(1,random®);
floodfill(300,240,white);
n:=1;
r:=r+10;
end;
end;
readln;
closegraph;
end.

.



 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

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


Цитата
5угольник менялся с нем

менялся с кем? и Как менялся?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Пионер в программировании
**

Группа: Пользователи
Сообщений: 66
Пол: Мужской

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


десь в задаче радиус не надо вводить. а надо сделать чтобы мог. когда введу то 5угольник тоже должен изменится
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Если б ты еще задание привел, то было бы вообще прекрасно... Тебе что, надо в разноцветном круге крутить разноцветный пятиугольник? Тогда смотри в сторону DrawPoly/FillPoly, и не надо жестко задавать точки, достаточно их высчитывать перед отрисовкой. Вот набросок, добавишь закрашивание круга:

program z2;

uses crt, graph;

const
points = 5;
var
T: pointtype;
pts: array[1 .. points + 1] of pointtype;
centerx, centery, C, i, j, R: integer;
angle, start_angle: real;

gd, gm: integer;

begin
r := 100; { <--- Можешь и вводить }

randomize;
gd := detect;
initgraph(gd, gm, '');

centerx := getmaxx div 2; centery := getmaxy div 2;

for i := 1 to 5 do begin
cleardevice;
setcolor(white);
circle(centerx, centery, R);
{ <--- Здесь надо закрасить круг нужным цветом }

if odd(i) then start_angle := 54 else start_angle := 18;
for j := 1 to points do begin
angle := (start_angle + pred(j) * (360 div points)) * (Pi / 180);
pts[j].X := centerx + trunc(R * cos(angle));
pts[j].Y := centery + trunc(R * sin(angle));
end;
pts[points + 1] := pts[1];

C := random(16);
setfillstyle(solidfill, C);
fillpoly(points + 1, pts);

delay(1000);
end;
readln;
closegraph;
end.
(проверялось в Турбо Паскале. В 32-битных работает не совсем корректно, так что просьба обладателей FPC сразу не кидаться камнями, этот код - именно для Турбо)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Пионер в программировании
**

Группа: Пользователи
Сообщений: 66
Пол: Мужской

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


почемуто не крутит и вообще просто круг рисует
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Я не знаю, почему у тебя не крутит, и рисует только круг. У меня отрабатывает как я написал. Попробуй увеличить задержку (до 25000, скажем), может ты просто не видишь процесса вращения. Но пятиугольник обязан был отрисоваться в любом случае.

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Пионер в программировании
**

Группа: Пользователи
Сообщений: 66
Пол: Мужской

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


не рисует
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(trew @ 7.12.2008 20:47) *
не рисует
В следующем посте, по-видимому, будет просто "не" smile.gif

trew, ты давай немного больше информации по проблеме, если хочешь получить ответ. Мне кажется, это в твоих интересах. И так народ в этой теме гадает, что тебе нужно, по твоим крайне невразумительным фразам..


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





- Текстовая версия 19.04.2024 15:58
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name