Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2019, 11:26   #1
tesvaider
Новичок
Джуниор
 
Регистрация: 12.04.2019
Сообщений: 1
По умолчанию [Pascal ABC] отредактируйте, не запускается

Код:
program qq;
uses graphabc,crt;
const menu:array[1..3]of string[30]=('О программе','Старт','Выход');

var punkt,esc:longint;
clav:char;

Procedure text_menu(punkt:integer);
Var i:integer;

begin
for i:=1 to 3 do 
  begin
    if i=punkt then setfontcolor(clred)
    else setfontcolor(clblue);   
    Textout(300,200+20*i,menu[i]);  
    setfontcolor(clblue);
    Textout(250,600,'Для работы с программой сделайте активным окно Crt');
  end;
end;

procedure tit();
begin
repeat                  
                  clearwindow;
                  textout(325,50,'Мин. образования и науки РФ');
                  textout(315,70,'Гос. автономное обр. учережние');
                  textout(330,90,'высшего проф. образования');
                  textout(335,110,'"УрФУ им. Б.Н. Ельцина"');
                  textout(350,130,'Институт строительства и архитектуры');
                  textout(370,180,'ИНФОРМАТИКА');
                  textout(350,220,'Самостоятельная работа');
                  textout(270,260,'Секундомер');
                  textout(600,350,'Группа : СТ-180008');
                  textout(600,370,'Студент : Умурбаев Р.Ф.');
                  textout(600,390,'Преподаватель : Служеникина Н.В.');
                  textout(600,410,'Дата сдачи : ');
                  textout(350,480,'Екатеринбург 2019');                  
                  clav:=readkey;
                  esc:=ord(clav);
              until esc=27
                  
end;

procedure oneb();
{----------------------------}
begin
  case ord(clav) of
          27:esc:=27;
          13:case punkt of
              1:begin
                  tit()
                end;
                              
                
              3:esc:=27;
             end;
  end;
end;

Begin
    setwindowsize(840,720);
    centerwindow;
    punkt:=1;
    esc:=0;
  
  repeat
    clearwindow;
     text_menu(punkt);
     clav:=readkey;
     if clav=chr(0)then
      begin
          clav:=readkey;
          case ord(clav) of
          38:begin
            punkt:=punkt-1;
            if punkt=0 then punkt:=3;
             end;
          40:begin
          punkt:=punkt+1;
          if punkt=6 then punkt:=1;
              end;
           end;
       end
      else
        begin
          oneb()
        end;
     until esc=27;
     CloseWindow; 
     
  End.
Пожалуйста, оформляйте Ваш код согласно правилам.

Последний раз редактировалось Вадим Мошев; 12.04.2019 в 11:45.
tesvaider вне форума Ответить с цитированием
Старый 12.04.2019, 12:31   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Код:
program qq;
uses graphabc,crt;
const menu:array[1..3]of string[30]=('О программе','Старт','Выход');

var punkt,esc:longint;
clav:char;

Procedure text_menu(punkt:integer);
Var i:integer;

begin
for i:=1 to 3 do
  begin
    if i=punkt then setfontcolor(clred)
    else setfontcolor(clblue);
    Textout(300,200+20*i,menu[i]);
    setfontcolor(clblue);
    Textout(250,600,'Для работы с программой сделайте активным окно Crt');
  end;
end;

procedure tit;
begin
repeat
                  clearwindow;
                  textout(325,50,'Мин. образования и науки РФ');
                  textout(315,70,'Гос. автономное обр. учережние');
                  textout(330,90,'высшего проф. образования');
                  textout(335,110,'"УрФУ им. Б.Н. Ельцина"');
                  textout(350,130,'Институт строительства и архитектуры');
                  textout(370,180,'ИНФОРМАТИКА');
                  textout(350,220,'Самостоятельная работа');
                  textout(270,260,'Секундомер');
                  textout(600,350,'Группа : СТ-180008');
                  textout(600,370,'Студент : Умурбаев Р.Ф.');
                  textout(600,390,'Преподаватель : Служеникина Н.В.');
                  textout(600,410,'Дата сдачи : ');
                  textout(350,480,'Екатеринбург 2019');
                  clav:=readkey;
                  esc:=ord(clav);
              until esc=27

end;

procedure oneb;
{----------------------------}
begin
  case ord(clav) of
          27:esc:=27;
          13:case punkt of
              1:begin
                  tit()
                end;


              3:esc:=27;
             end;
  end;
end;

Begin
    setwindowsize(840,720);
    centerwindow;
    punkt:=1;
    esc:=0;

  repeat
     text_menu(punkt);
     clav:=readkey;
     if clav=chr(0)then
      begin
          clav:=readkey;
          case ord(clav) of
          72:begin
            punkt:=punkt-1;
            if punkt=0 then punkt:=3;
             end;
          80:begin
          punkt:=punkt+1;
          if punkt=6 then punkt:=1;
              end;
           end;
       end
      else
        begin
          oneb()
        end;
     until esc=27;
     //CloseWindow;

  End.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не запускается Pascal ABC NET. annya Паскаль, Turbo Pascal, PascalABC.NET 3 12.10.2016 16:00
Отредактируйте программу vadiprog Помощь студентам 4 27.10.2011 00:24
макрос копирования отредактируйте. zander Microsoft Office Excel 1 17.03.2011 12:30
Отредактируйте пожалуйста программу МихХха Паскаль, Turbo Pascal, PascalABC.NET 0 24.05.2009 17:12