Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

pascal / 2 лаба / Program5

.pas
Скачиваний:
27
Добавлен:
13.02.2015
Размер:
1.63 Кб
Скачать
uses crt;
const kol=5;{количество пунктов меню}
{массив названий пунктов меню}
vybor:array[1..kol] of string=
('1-Диод','2-Транзистор ','3-Тиристор','4-Стабилитрон','5-Выход');

procedure Menu(var k:byte);{создание и вывод на экран меню}
var kod: char;
i:byte;
begin
window(1,1,80,25);
textbackground(0);
clrscr;
k:=1;
gotoxy(4,1);
write('Меню');
k:=1; {выведен первый пункт меню}
repeat
for i:=1 to kol do
begin
if i=k then {выделенный пункт}
begin
textbackground(3);
textcolor(9);
end
else {остальные}
begin
textbackground(0);
textcolor(15)
end;
gotoxy(1,i+1);{ставим курсор}
write(vybor[i]);{выводим пункты}
end;
repeat
kod:=readkey;
until Kod in [#13, #72, #80];
case Kod of
#72: begin{стрелка вверх}
k:=k-1;
if k=0 then k:=5;{если выше верха, вниз}
end;
#80: begin {стрелка вниз}
k:=k+1;
if k=6 then k:=1;{если ниже низа, вверх}
end;
end;
until kod=#13;{нажат Enter, выходим из меню в выбранную процедуру}
end;


{основная программа}
var k:byte;
h,m,d,w:word;
s:string;
begin
s:='Выбран тип полупроводникового прибора ';
repeat
textbackground(0);
textcolor(15);
Menu(k);{выводим меню}
clrscr;
case k of{выбираем стрелками действие}
1: begin
write(s,'диод');
readln;
end;
2: begin
write(s,'транзистор');
readln;
end;
3: begin
write(s,'тиристор');
readln;
end;
4: begin
write(s,'стабилитрон');
readln;
end;
5: exit;
end;
until k=5;
end.
Соседние файлы в папке 2 лаба