2015-10-09 3 views
-2

Это дает ошибку на первой еще, заявив, что не ожидалElse Ошибка в программе

Кроме того, если кто-то хочет добавить меня в скайпе, так что я могу задать эти основные вопросы, это поможет многое.

Program Game ; 

var answer: string; 

Begin 

writeln('(======= MENU =======)'); 
writeln('-------- PLAY --------'); 
writeln('-------- HELP --------'); 
writeln('-------- EXIT --------'); 

repeat 

writeln('Pick PLAY, HELP or EXIT'); 
readln(answer); 

if answer = 'EXIT' then 
     writeln(); 
     writeln('Write EXIT again!') 
    else 
     if answer = 'HELP' then 
    writeln(); 
    writeln('Simple commands like observe, look, take.') 
     else 
    if answer = 'PLAY' then 
    writeln(); 
      writeln('You are in a cave!'); 

until answer = 'EXIT'; 

End. 
+0

Пожалуйста, оставляйте свой код в виде текста, а не в виде изображения. –

+0

Хорошо, не проблема :) – Scar

+0

«Основной» тег предназначен для универсального символьного кода начинающего пользователя ... не для «простых» вопросов. – crashmstr

ответ

0

Паскаль ожидает один заявление между if и else. Он понимает код неправильно:

if answer = 'EXIT' then 
    writeln(); (* one statement *) 

writeln('Write EXIT again!') (* unrelated to the "if" above *) 

else (* error - no preceding "if" *) 

Решение, использовать begin и end вложить 2 заявления в одном:

if answer = 'EXIT' then 
    begin 
    writeln(); 
    writeln('Write EXIT again!') 
    end 
else 
...