Не верное чтение данных: считывает пустую строку вместо ввода с клавиатуры - Free Pascal

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

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

Доброго времени суток! Выполняю задание и вроде все хорошо, но на 1-м вхождении цикла FOR после вывода 'Write... First name:' происходит считывание пустой строки и вывод 'Middle name:' далее происходит нормальное считывание. Почему так происходит и как это исправить ? Ведь мне необходимо выполнить ввод данных с клавиатуры.
{
    Create text file with the list of the group's students 
}
 
program z1;
 
uses crt;
var i, n : byte;
    f : text;
    Student : array[1..100] of record
                                    FName : string;
                                    MName : string;
                                    LName : string;
                                end;
 
BEGIN
    assign(f, 'list.txt');
    rewrite(f);
    writeln('How many students are in the group ?');
    read(n);
    clrscr;
    for i := 1 to n do
    begin
        writeln('Write down information about the student. ');
        write('First name: ');
        readln(Student[i].FName);
        write('Middle name: ');
        readln(Student[i].MName);
        write('Last name: ');
        readln(Student[i].LName);
        clrscr;
    end;
    writeln('List of the students:');
    writeln(f, 'List of the students:');
    for i := 1 to n do
    begin
        writeln(Student[i].FName + ' ' + Student[i].MName + ' ' + Student[i].LName);
        writeln(f, Student[i].FName + ' ' + Student[i].MName + ' ' + Student[i].LName);
    end;
    close(f);
    write('Press key to continue...');
    readln; 
END.

Решение задачи: «Не верное чтение данных: считывает пустую строку вместо ввода с клавиатуры»

textual
Листинг программы
 readln(n);

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


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

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

5   голосов , оценка 4 из 5
Похожие ответы