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

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

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

 
 Ответить  Открыть новую тему 
> Кирпичная стена.Графика
Pacman
сообщение 19.03.2009 19:32
Сообщение #1





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

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


Помогите пожалуйста,нужна программа в Паскале,которая будет рисовать кирпичную стену,длину стороны кирпича нужно вводить с клавиатуры.
Заранее спасибо.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
amega
сообщение 19.03.2009 20:39
Сообщение #2


?
***

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

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


один из вариантов это написать процедуру которая получает три параметра , координаты вершины примаугольника, длину и висоту, и потом в основной програме вызивать в цикле ее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Unconnected
сообщение 19.03.2009 21:39
Сообщение #3


mea culpa
*****

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

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


Кирпичные стены тоже разные бываютsmile.gif Можно рисовать кирпич под кирпичом, а можно со смещением в полкирпича.. Ну если допустить, что тебе нужен первый вариант, то можно написать процедуру, входными параметрами которой будут необходимые координаты верхнего левого края кирпича и его стороны. Далее рисуем в ряд кирпич за кирпичом определённое количество раз (по ширине экрана, наверное) и переходим на следующий ряд. Координата y (которая как входной параметр процедуры) при этом увеличивается на высоту кирпича..


--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Айра
сообщение 20.03.2009 1:34
Сообщение #4


Профи
****

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

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


А у меня вот такой вариант, линиями:
uses wincrt,graph;
var height,width,x,y,gd,gr,err,i: integer;
x0,y0,xN,yN: integer;
begin
gd:=detect;
gr:=VGAHi;
InitGraph(gd,gr,'');
if err <> grOk then
begin
writeln('не удалось инициализировать Graph');
exit;
end;
writeln('введите координаты верхнего левого угла стены: ');
readln(x0,y0);
writeln('введите координаты правого нижнего угла стены: ');
readln(xN,yN);
write('введите высоту кирпичика: ');
readln(height);
write('введите ширину кирпичика: ');
readln(width);
setcolor(5);
x:=x0;
y:=y0;
while y<=yN do
begin
line(x,y,xN,y);
y:=y+height;
end;
x:=x0;
y:=y0;
for i:=1 to 2 do
begin
while y<=yN do
begin
while x<=xN do
begin
line(x,y,x,y+height);
x:=x+width;
end;
y:=y+2*height;
x:=x0;
end;
x0:=x0+width div 2;
x:=x0;
y:=y0+height;
end;
readln;
closegraph;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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