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

pascal / 2 лаба / Program5

.pas
Скачиваний:
60
Добавлен:
13.02.2015
Размер:
2 Кб
Скачать
☆
 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 лаба