Программа


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.

Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию