Программа
USES CRT; { Подключение модуля CRT }
CONST FileName='SCHOOL'; { Имя файла с данными }
QuantityMarks=5; { Количество оценок }
TYPE PupilType=record { Тип "Ученик" }
FamilyName:string[10];
Name:String[10];
Form:record
Year:byte;
Letter:char;
end;
Marks:array [1..QuantityMarks] of byte
end;
VAR Meter1,Meter2:integer; { Счетчик }
F:file of PupilType; { Файл учеников }
Pupil:PupilType; { Ученик }
BEGIN
ClrScr; { Очистка экрана }
Randomize; { Инициализация генератора случайных чисел }
Assign(F,FileName); { Связывание файловой переменной с именем файла }
Rewrite(F); { Открытие файла под запись }
for Meter1:=1 to Random(21) do { Цикл созданиия файла }
Begin
with Pupil do
begin
if (Random(2)=0)or(Meter1=1) then
begin
FamilyName:=''; { Сброс фамилии }
for Meter2:=0 to Random(10) do { Цикл определения фамилии }
FamilyName:=FamilyName+Chr(Ord('A')+Random(26))
end;
if (Random(2)=0)or(Meter1=1) then
begin
Name:=''; { Сброс имени }
for Meter2:=0 to Random(10) do { Цикл определения имени }
Name:=Name+Chr(Ord('A')+Random(26))
end;
if (Random(2)=0)or(Meter1=1) then
begin
with Form do { Определение класса }
begin
Year:=Random(11)+1;
Letter:=Chr(Ord('a')+Random(2))
end
end;
Write(FamilyName:10,' ',Name:10,' ',Form.Year:2,Form.Letter,' ');
{ Вывод созданых полей }
for Meter2:=1 to QuantityMarks do { Цикл определения оценок }
begin
Marks[Meter2]:=Random(6);
Write(Marks[Meter2]) { Вывод оценок }
end;
WriteLn { Пропуск строки }
end;
Write(F,Pupil) { Вывод записи в файл }
End;
Close(F); { Закрытие файла }
END.
Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию