Ошибка "Syntax Error, ":" expected but ";" found - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Unit SourceModMenu;
 
interface
 
Uses Crt;
 
function Menu(X,Y: integer):integer; //Функция для меню
Procedure Menu80; // Процедура для функции Menu. При нажатии стрелкии вверх
Procedure Menu72; // Процедура для функции Menu. При нажатии стрелкии вниз
 
var Choose: integer;
 
implementation
 
var
CurrStr: integer;
strall1: string;
strall2: string;
strall3: string;
 
Function Menu(X,Y: integer;str1,str2,str3: string):integer;
var
key: char;
CucleEnd: boolean;
begin
Clrscr;
CurrStr:=1;
strall1:=str1;
strall2:=str2;
strall3:=str3;
GoToXY(X,Y);
TextColor(Black);
TextBackground(White);
write(str1);
TextColor(White);
TextBackground(Black);
write(str2);
repeat
key:=readkey;
if key=chr(0) then
key:=readkey;
if key=chr(80) then
Menu80;
if key=chr(72) then
Menu72;
if key=chr(13) then
CucleEnd:=true;
until CucleEnd=true;
Menu:=Choose;
end;
 
Function Menu80;
begin
case (CurrStr) of
2:
begin
TextColor(White);
TextBackgroud(Black);
write(strall2);
CurrStr:=CurrStr-1;
TextColor(Black);
TextBackgroud(White);
write(strall1);
end;
3:
begin
TextColor(White);
TextBackgroud(Black);
write(strall3);
CurrStr:=CurrStr-1;
TextColor(Black);
TextBackgroud(White);
write(strall2);
end;
end;
end;
 
Function Menu72;
begin
case (CurrStr) of
1:
begin
TextColor(White);
TextBackgroud(Black);
write(strall1);
CurrStr:=CurrStr+1;
TextColor(Black);
TextBackgroud(White;);
write(strall2);
end;
2:
begin
TextColor(White);
TextBackgroud(Black);
write(strall2);
CurrStr:=CurrStr+1;
TextColor(Black);
TextBackgroud(White);
write(strall3);
end;
end;
end;
 
end.
Помогите плиз У меня выдает ошибку "Syntax Error, ":" expected but ";" found Хотя после процедуры ":" ставить не надо. В чем проблема?
Чуть не забыл. Ошибку выдает в 52 строчке

Решение задачи: «Ошибка "Syntax Error, ":" expected but ";" found»

textual
Листинг программы
key:=Readkey;
if key=#0 then
key:=Readkey;
if key=#80 then
Menu80;
if key=#72 then

Объяснение кода листинга программы

  1. key:=Readkey; - считывание нажатой клавиши и присвоение её значения переменной key
  2. if key=#0 then - проверка нажатой клавиши на равенство 0 (нажатие клавиши Enter)
  3. key:=Readkey; - считывание следующей нажатой клавиши и присвоение её значения переменной key
  4. if key=#80 then - проверка нажатой клавиши на равенство 80 (нажатие клавиши P)
  5. Menu80; - вызов процедуры Menu80
  6. if key=#72 then - проверка нажатой клавиши на равенство 72 (нажатие клавиши R)
  7. Readkey; - считывание следующей нажатой клавиши
  8. key:=Readkey; - присвоение значения считанной клавиши переменной key
  9. if key=#80 then - проверка нажатой клавиши на равенство 80 (нажатие клавиши P)
  10. Menu80; - вызов процедуры Menu80
  11. if key=#72 then - проверка нажатой клавиши на равенство 72 (нажатие клавиши R)
  12. Readkey; - считывание следующей нажатой клавиши
  13. key:=Readkey; - присвоение значения считанной клавиши переменной key
  14. if key=#80 then - проверка нажатой клавиши на равенство 80 (нажатие клавиши P)
  15. Menu80; - вызов процедуры Menu80
  16. if key=#72 then - проверка нажатой клавиши на равенство 72 (нажатие клавиши R)
  17. Readkey; - считывание следующей нажатой клавиши
  18. key:=Readkey; - присвоение значения считанной клавиши переменной key
  19. if key=#80 then - проверка нажатой клавиши на равенство 80 (нажатие клавиши P)
  20. Menu80; - вызов процедуры Menu80

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5