С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
1 / 1 / 2
Регистрация: 23.12.2013
Сообщений: 112
1

Используя метод узловой точки, составить процедуру рисования фигуру

25.09.2014, 20:46. Показов 3257. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Фигура----Кораблик



С помощью этой процедуры составить две программы:
1) нарисовать на экране три таких фигуры разных размеров в разных местах экрана
2) реализовать движение фигуры по экрану по горизонтали слева направо
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Блог
25.09.2014, 20:46
Ответы с готовыми решениями:

Вывести значения функции. Составить процедуру рисования изображения
2 варианта почти ничем неотличаются мне хотябы 1 и 2 номер зделайте плиз во 2 задании сказано что...

Описать процедуру рисования любого узора. Используя эту процедуру "замостить" узором холст
Разработать программу, в которой описана процедура рисования любого графического узора, на основе...

Составить процедуру рисования фигуры
1.Составить процедуру рисования фигуры 2.разделять графический экран с использованием заливки на 6...

Составить процедуру рисования фигуры
Собстевнно, как вы уже поняли, нужно составить процедуру рисования фигуры. вот эта фигура:

2
Заблокирован
25.09.2014, 20:59 2
В чём вопрос?
0
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
26.09.2014, 15:56 3
Лучший ответ Сообщение было отмечено erl27 как решение

Решение

1)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
uses graphABC;
procedure Kor (x,y:integer;m:real);
begin
setpencolor(clbrown);
setbrushcolor(clbrown);
setpenwidth(3);
rectangle(x+round(10*m),y,x+round(110*m),y+round(20*m));
line(x+round(109*m),y+round(18*m),x+round(140*m),y);
line(x+round(140*m),y,x+round(109*m),y);
floodfill(x+round(115*m),y+round(5*m),clbrown);
setpencolor(clwhite);
line(x+round(60*m),y-round(5*m),x+round(140*m),y-round(5*m));
line(x+round(140*m),y-round(5*m),x+round(60*m),y-round(100*m));
line(x+round(60*m),y-round(100*m),x+round(60*m),y-round(5*m));
line(x+round(50*m),y-round(5*m),x+round(10*m),y-round(5*m));
line(x+round(10*m),y-round(5*m),x+round(50*m),y-round(80*m));
line(x+round(50*m),y-round(80*m),x+round(50*m),y-round(5*m));
floodfill(x+round(65*m),y-round(10*m),clwhite);
floodfill(x+round(45*m),y-round(15*m),clwhite);
end;
begin
setbrushcolor(clAqua);
rectangle(0,0,700,500);
Kor (150,200,1);
Kor(350,300,1.5);
Kor(100,400,0.5);
end.
2)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
uses graphABC;
procedure Kor (x,y:integer;m:real);
begin
setpencolor(clbrown);
setbrushcolor(clbrown);
setpenwidth(3);
rectangle(x+round(10*m),y,x+round(110*m),y+round(20*m));
line(x+round(109*m),y+round(18*m),x+round(140*m),y);
line(x+round(140*m),y,x+round(109*m),y);
floodfill(x+round(115*m),y+round(5*m),clbrown);
setpencolor(clwhite);
line(x+round(60*m),y-round(5*m),x+round(140*m),y-round(5*m));
line(x+round(140*m),y-round(5*m),x+round(60*m),y-round(100*m));
line(x+round(60*m),y-round(100*m),x+round(60*m),y-round(5*m));
line(x+round(50*m),y-round(5*m),x+round(10*m),y-round(5*m));
line(x+round(10*m),y-round(5*m),x+round(50*m),y-round(80*m));
line(x+round(50*m),y-round(80*m),x+round(50*m),y-round(5*m));
floodfill(x+round(65*m),y-round(10*m),clwhite);
floodfill(x+round(45*m),y-round(15*m),clwhite);
end;
var x,y:integer;
    m:real;
begin
setbrushcolor(clAqua);
rectangle(0,0,700,500);
lockdrawing;
x:=0;
y:=windowheight div 2;
m:=1.2;
repeat
clearwindow(clAqua);
Kor (x,y,m);
sleep(50);
x:=x+2;
redraw;
until x>windowwidth-round(140*m);
 
end.
Добавлено через 3 секунды
1)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
uses graphABC;
procedure Kor (x,y:integer;m:real);
begin
setpencolor(clbrown);
setbrushcolor(clbrown);
setpenwidth(3);
rectangle(x+round(10*m),y,x+round(110*m),y+round(20*m));
line(x+round(109*m),y+round(18*m),x+round(140*m),y);
line(x+round(140*m),y,x+round(109*m),y);
floodfill(x+round(115*m),y+round(5*m),clbrown);
setpencolor(clwhite);
line(x+round(60*m),y-round(5*m),x+round(140*m),y-round(5*m));
line(x+round(140*m),y-round(5*m),x+round(60*m),y-round(100*m));
line(x+round(60*m),y-round(100*m),x+round(60*m),y-round(5*m));
line(x+round(50*m),y-round(5*m),x+round(10*m),y-round(5*m));
line(x+round(10*m),y-round(5*m),x+round(50*m),y-round(80*m));
line(x+round(50*m),y-round(80*m),x+round(50*m),y-round(5*m));
floodfill(x+round(65*m),y-round(10*m),clwhite);
floodfill(x+round(45*m),y-round(15*m),clwhite);
end;
begin
setbrushcolor(clAqua);
rectangle(0,0,700,500);
Kor (150,200,1);
Kor(350,300,1.5);
Kor(100,400,0.5);
end.
2)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
uses graphABC;
procedure Kor (x,y:integer;m:real);
begin
setpencolor(clbrown);
setbrushcolor(clbrown);
setpenwidth(3);
rectangle(x+round(10*m),y,x+round(110*m),y+round(20*m));
line(x+round(109*m),y+round(18*m),x+round(140*m),y);
line(x+round(140*m),y,x+round(109*m),y);
floodfill(x+round(115*m),y+round(5*m),clbrown);
setpencolor(clwhite);
line(x+round(60*m),y-round(5*m),x+round(140*m),y-round(5*m));
line(x+round(140*m),y-round(5*m),x+round(60*m),y-round(100*m));
line(x+round(60*m),y-round(100*m),x+round(60*m),y-round(5*m));
line(x+round(50*m),y-round(5*m),x+round(10*m),y-round(5*m));
line(x+round(10*m),y-round(5*m),x+round(50*m),y-round(80*m));
line(x+round(50*m),y-round(80*m),x+round(50*m),y-round(5*m));
floodfill(x+round(65*m),y-round(10*m),clwhite);
floodfill(x+round(45*m),y-round(15*m),clwhite);
end;
var x,y:integer;
    m:real;
begin
setbrushcolor(clAqua);
rectangle(0,0,700,500);
lockdrawing;
x:=0;
y:=windowheight div 2;
m:=1.2;
repeat
clearwindow(clAqua);
Kor (x,y,m);
sleep(50);
x:=x+2;
redraw;
until x>windowwidth-round(140*m);
 
end.
2
26.09.2014, 15:56
cpp_developer
Эксперт
20123 / 5690 / 417
Регистрация: 09.04.2010
Сообщений: 12,546
Блог
26.09.2014, 15:56
Помогаю со студенческими работами здесь

Составить процедуру рисования фигуры
1) Составить процедуру рисования фигуры ...

Составить процедуру рисования фигуры через цикл
составить процедуру рисования фигуры через цикл

Как используя операторы цикла и графики составить программу для рисования на экране каскада эллипсов
Используя операторы цикла и графики, составьте программу для рисования на экране следующего

Как провести прямую, соединяющую две точки, не используя процедуру Line?
Точки заданы с клавиатуры. Уравнение прямой y=kx+b k=(y2-y1)/(x2-x1) b=y1-kx1


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru