Контрольная работа: Создание электронной записной книжки
if B[p].Subject<>'' then
writeln('zapis ',p,' ',B[p].Subject);
end;
end;
Наконец осталось реализовать задачу по выводу всех заполненных полей записей в виде небольшой таблицы. Для равенства ячеек ограничим количество символов в полях до 13, используя «setlength». Тогда за вывод полей будет отвечать следующий отрывок программы:
if a =' all ' then
begin
writeln('Zapis ','Group ','Name ','Subject ','Mark ');
for p:=1 to 10 do
begin
setlength(B[p].Subject,13);setlength(B[p].Mark,13);setlength(B[p].Group,13);setlength(B[p].Name,13);
if (B[p].Subject<>'') or (B[p].Mark<>'') or (B[p].Group<>'') or (B[p].Name<>'') then
writeln('Zapis ',p,' ',B[p].Group,B[p].Name,B[p].Subject,B[p].Mark);
end;
end;
2.5 Завершение программы. Принцип работы
В пункте 2.2 мы задали цикл «repeatuntil». Чтобы выйти из программы достаточно задать параметру «a» команду, определяющую, до каких пор должен выполняться цикл:
repeat
<…>
until a =' q ';
После этого с помощью «writeln» выведем на экран надпись (программа «прощается» с пользователем). Чтобы пользователь успел её прочитать, добавим «readln». Тогда выход будет осуществляться после нажатия клавиши «Enter».
writeln('Chto zh vy nadelali...');
readln;
end.
После запуска программа работает следующим образом:
1) на экран выводится приветствие, в котором выводится название программы, имя создателя и список команд;
2) вводится номер записи. При этом пользователь видит появившеюся надпись «current record <№ записи>»;
3) после ввода команды «new» пользователю открывается возможность поочередного заполнения полей записи. Если номер записи не выбран, то на экран выводится сообщение «choose the record». После окончания редактирования текущей записи, появляется сообщение «Vvedite novuyu komandu»;
4) для просмотра какой-либо записи, необходимо ввести номер этой записи и команду «out», после чего информация об этой записи будет выведена на экран;