Помощь - Поиск - Пользователи - Календарь
Полная версия: Кирпичная стена.Графика
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Pacman
Помогите пожалуйста,нужна программа в Паскале,которая будет рисовать кирпичную стену,длину стороны кирпича нужно вводить с клавиатуры.
Заранее спасибо.
amega
один из вариантов это написать процедуру которая получает три параметра , координаты вершины примаугольника, длину и висоту, и потом в основной програме вызивать в цикле ее.
Unconnected
Кирпичные стены тоже разные бываютsmile.gif Можно рисовать кирпич под кирпичом, а можно со смещением в полкирпича.. Ну если допустить, что тебе нужен первый вариант, то можно написать процедуру, входными параметрами которой будут необходимые координаты верхнего левого края кирпича и его стороны. Далее рисуем в ряд кирпич за кирпичом определённое количество раз (по ширине экрана, наверное) и переходим на следующий ряд. Координата y (которая как входной параметр процедуры) при этом увеличивается на высоту кирпича..
Айра
А у меня вот такой вариант, линиями:
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.
АЗАЗА
почему она не работает в абс паскаль?
Федосеев Павел
В PascalABC другие процедуры рисования, другой модуль графики. Почитайте справку по ABC и замените процедуры на соответствующие.
Гость
вы можете подсказать как ее изменить?
Федосеев Павел
Скорее нет, чем да. Я не знаком с ABC.
Вы можете сделать это самостоятельно. Т.к. рисование линий просто имеет лишь отличия в названиях.
Перечень графических примитивов TurboPascal можно посмотреть в справке Сайт, инициализацию графики выполнить по примерам из ABC, и подключить соответствующие модули (graphABC).
how long does it take for viagra
cialis prix conseille
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.