Advertisement
CyberPascal

Untitled

Nov 18th, 2013
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 3.85 KB | None | 0 0
  1. {
  2. Сибирский Государственный Университет Путей Сообщения (СГУПС)
  3. Кафедра "Информационные технологии транспорта"
  4. Лабораторная работа №12.
  5. Выполнил: ст.гр. МЛ-112, Фомин Александр
  6. г.Новосибирск, 2012г.
  7. }
  8.  
  9. Program Lab5_6; uses crt;
  10.  
  11. const sex:array [1..2] of string=('Мужчина','Женщина');
  12.       s_item=2;
  13.  
  14. var ch:char;
  15.     i:byte;
  16.     m_sex:string;
  17.      age:byte;
  18.  
  19. Begin clrscr;
  20. TextColor(White);
  21. Write('--------------------------------------------------------------------------------');
  22. GotoXY(17,WhereY); Writeln('Для запуска программы нажмите клавишу "Enter"');
  23. Write('--------------------------------------------------------------------------------');
  24. Readln; clrscr;
  25.  
  26. Write('--------------------------------------------------------------------------------');
  27. i:=0;
  28. TextColor(Cyan); Write(' Пол: ');
  29. TextColor(White); Write('[ Для управления используйте стрелки "',#26, '" и "', #27,'" ]');
  30.  
  31. Readkey; GotoXY(19,WhereY); clrEol;
  32.  
  33. Repeat
  34. TextColor(Yellow); {Цвет текста текущего элемента массива}
  35. Ch:=ReadKey;
  36. if (Ch in [#13,#75,#77]) then {#77 - стрелка вправо / #75 - стрелка влево / #13 - клавиша Enter}
  37.    Begin
  38.    Case Ch of
  39.         #77:Begin {Стрелка вправо}
  40.             Inc(i); {Определяем номер элемента в массиве}
  41.  
  42.             {Если элемент был последним, то возвращаемся к первому}
  43.                 if (i > s_item) then
  44.                                 Begin
  45.                                 i:=1; {Первый элемент массива}
  46.                                         GotoXY(7,WhereY); clrEol;
  47.                                 Write(Sex[i]);
  48.                                 end;
  49.                    GotoXY(7,WhereY); clrEol;
  50.              Write(Sex[i]);
  51.              end;
  52.  
  53.         #75:Begin {Стрелка влево}
  54.                   if (i = 0) then i:=1;
  55.             Dec(i); {Определяем номер элемента в массиве}
  56.  
  57.               {Если элемент был первым, то возвращаемся к последнему}
  58.             if (i < 1) then
  59.                                    Begin
  60.                            i:=s_item; {Последний в массиве}
  61.                                    GotoXY(7,WhereY); clrEol;
  62.                            Write(Sex[i]);
  63.                            end;
  64.                   GotoXY(7,WhereY); clrEol;
  65.                   Write(Sex[i]);
  66.             end;
  67.  
  68.                 #13:Begin
  69.             m_Sex:=Sex[i]; {Заоминаем выбранный элемент массива}
  70.             Writeln;
  71.             end;
  72.    end;{Case}
  73.    end; {Begin (офератор If)}
  74. Until Ch=#13; {Подтверждения выбора (кнопка Enter)}
  75. {----- Форма правления End -----}
  76.  
  77. TextColor(Cyan); Write(' Возраст: ');
  78. TextColor(Yellow); Readln(Age);
  79.  
  80. TextColor(White);
  81. Write('--------------------------------------------------------------------------------');
  82. TextColor(Cyan); Write(' Результат: '); TextColor(Yellow);
  83. if ((m_Sex = Sex[1]) and ((18 <= Age) and (Age <= 27))) then Writeln(' Человек является военнообязанным')
  84.                                                         else Writeln(' Человек не является военнообязанным');
  85. TextColor(White);
  86. Write('--------------------------------------------------------------------------------');
  87. GotoXY(15,WhereY); Writeln('Для выхода из программы нажмите клавишу "Enter"');
  88. Write('--------------------------------------------------------------------------------');
  89. Readln;
  90. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement