Что не так с этим синтаксисом pascal ?? - вызывает ошибку компилятора - PullRequest
0 голосов
/ 26 апреля 2020

Я серьезно устал и не могу найти ошибку с этим кодом. Суть дела в том, что мой компилятор продолжает возвращать ошибку:

Fatal: Syntax error, ; expected, but identifier ID found

Это единственная ошибка, и она не запускается. Мой код довольно прост. Он продолжает ожидать точку с запятой, где я пытаюсь прочитать идентификатор массива. Я думал, что это потому, что я объявил свой массив неправильно, поэтому я проверил, и я уверен, что все в порядке?

Тогда я подумал, что 'n' не считается, поэтому я переключился с повтора на а для l oop. Та же проблема. Может кто-нибудь увидеть, в чем проблема, потому что я определенно не могу :(

КОД НИЖЕ:

program enteridentification;
uses
    crt;
var
   name:array[1..40] of string;
    ID:array[1..40] of string;
    grade_level:array[1..40] of string;
    initial_fee:array[1..40] of real;
    final_fee:array[1..40] of real;
n, count:integer;
begin
    n:=1;
    count:=1;
    FOR n:= 1 to 2 DO
        begin
         writeln ('Record No:',count);
         writeln ('Enter your ID number. Remember it is in the format XX19PPP.');
         writeln(' XX - first and last name initial. 19 - graduation year (constant). XXX - order in register (001, 002, 003 etc.)');
         readln ID[n];
         end;
end.

1 Ответ

1 голос
/ 26 апреля 2020

Строка 'readln' должна заключаться в квадратные скобки вокруг идентификатора [n] - это параметр, который вы передаете процедуре readln.

readln (ID[n]);

Когда вы слишком устали запрограммировать: go спать и смотреть программу еще один день.

...