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

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

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

> Задачи на графику
сообщение
Сообщение #1


Новичок
*

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

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


Ни на одном форуме мне никто не смог помочь. Надеюсь, что здесь я все таки найду помощь smile.gif

1. Написать программу, которая выводит на экран меню, в котором в зависимости от выбора пользователя появляется круг, квадрат или треугольник.

2. Напишите программу, которая в зависимости от кода нажатой клавиши (используйте клавиши перемещения курсора) управляет движением фигуры человечка (вверх, вниз, влево, вправо). Образ человечка занесите в память.

Заранее спасибо! smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Новичок
*

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

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


Я скопировал это на одном форуме, меню сойдет, но как описать появление квадрата, круга и треугольника.
Наверное процедуру надо написать. Я пишу обычную про-ру, вставляю ее имя после case в самом низу программы, а она не пашет. Вместо начать и загрузить, я пишу квадрат...


uses crt;
type
menuitems=array [1..3] of string;

const
mainmenu:menuitems =
(' начать ',
' загрузить ',
' Выход ');

Procedure menu(var m:menuitems; kol: byte; var num: byte);

var i,y: byte; ch: char;

Begin
window(25,8,65,20);
textbackground(0);
clrscr;
textcolor(12);
writeln(' +------+ ');
writeln('+----------! МЕНЮ !-----------+');
writeln('! +------+ !');
{ writeln(' ХННННННё ');
writeln('ЙННННННННННµ Њ…Ќћ ЖННННННННННН»');
writeln('є ФННННННѕ є'); }
for i:=1 to kol do
writeln('! !');
{ for i:=1 to kol do
writeln('є є');
}

window(25,10+kol+1,65,10+kol+1);
write('+-----------------------------+');
{ write('ИНННННННННННННННННННННННННННННј'); }

window(26,10+2,54,10+kol);
textcolor(3);
for i:=2 to kol-1 do
writeln(m[i]);
textcolor(4);write(m[kol]);

window(26,10+1,54,10+1);
textcolor(15);
textbackground(9);
clrscr;
write(m[1]);
i:=1;
y:=11;

repeat
ch:=readkey;
case ch of
#80: begin
window(26,y,54,y);textcolor(3);textbackground(0);clrscr;
write(m[i]);
if i=kol then
begin
window(26,y,54,y);clrscr;textbackground(0);textcolor(4);write(m[kol]);
i:=1;y:=11;
end
else begin inc(i);inc(y);end;
window(26,y,54,y);textcolor(15);textbackground(9);clrscr;write(m[i]);
end;
#72: begin
window(26,y,54,y);textcolor(3);textbackground(0);clrscr;write(m[i]);
if i=1 then
begin
i:=kol;y:=10+kol;
end
else begin i:=i-1;y:=y-1;
if i=kol-1 then begin
window(26,10+kol,54,10+kol);textcolor(4);clrscr;write(m[kol]); end;
end;
window(26,y,54,y);textcolor(15);textbackground(9);clrscr;write(m[i]);
end;
end;
until (ch=#13);
num:=i;
end;


var r: byte;

begin
textbackground(0);
clrscr;

repeat
window(1,1,80,25); textbackground(0); clrscr;

menu(mainmenu,3,r);

window(1,1,80,25); textbackground(0); clrscr;

Case r of

1: вызвать процедуру начать;

2: вызвать процедуру загрузить;

end;

until r=3;
end.



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

Сообщений в этой теме
Dezman   Задачи на графику   8.12.2007 17:32
Ozzя   меню во фрейме [b]Добавлено через 2 мин. [url=…   8.12.2007 17:36
Dezman   Спасибо большое, теперь все понятно :) :good: мен…   10.12.2007 17:51
Dezman   2Ozzя В Паскале у меня есть один большой пробел эт…   8.12.2007 17:50
Ozzя   2. вводный проект Добавлено через 2 мин. В 1-м …   8.12.2007 18:09
Dezman   А вторую часть первой проги куда прикрутить? :(   9.12.2007 0:46
Dezman   Вторая задача у меня не работает :( Может кто-нить…   9.12.2007 1:27
Dezman   Неужели никто не знает? :( Мне это на зачет надо, …   9.12.2007 3:23
Ozzя   как сохранить в память человечка не знаю! g…   10.12.2007 14:46
Dezman   :( Мдя   9.12.2007 15:58
Dezman   Я сделал вторую программу, но столкнулся с проблем…   10.12.2007 16:41
Ozzя   После GetImage сделай ClearViewPort.   10.12.2007 17:31
volvo   getimage(0,0,20,100,p1^); { <--- это у тебя был…   10.12.2007 17:34
volvo   А Unit не запускается... Его надо подключить к про…   10.12.2007 18:14
Dezman   То есть: Program Z1; Uses Unit .... Или как? Я в …   10.12.2007 18:25
Артемий   Да.Только не Unit - это зарезервированное слово.Un…   10.12.2007 18:32
Dezman   file not found (unit1.tpu) И где его взять? Замучи…   10.12.2007 18:36
Артемий   Так ты должен создать сначала этот юнит,другими сл…   10.12.2007 18:39
Dezman   Можешь написать этот кусок?   10.12.2007 18:45
volvo   Dezman, по приведенной тобой ссылке есть текст мод…   10.12.2007 18:52
Ozzя   ерш твою медь! :mad:   10.12.2007 18:54
Dezman   Спокойно :( Я ж говорил, что в модулях и графике н…   10.12.2007 18:56
Dezman   Я скопировал это на одном форуме, меню сойдет, но …   12.12.2007 0:19
volvo   У тебя ж графика не инициализирована... InitGraph/…   12.12.2007 0:23
Dezman   И есть вся прога полностью, она работает. Я просто…   12.12.2007 0:27
volvo   Опять 25... Работает - это значит компилируется (и…   12.12.2007 1:16
Dezman   Это прога выводит только меню. А как сделать так, …   12.12.2007 1:32


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

 





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