Создание и корректировка файла, содержащего сведения об абитуриентах - Free Pascal
Формулировка задачи:
Постановка задачи
Разработать программу создания и корректировки файла, содержащего сведения об абитуриентах, сдавших вступительные экзамены в институт. Каждый элемент этого файла должен содержать следующие данные: фамилию и инициалы абитуриента, специальность, на которую он поступает, полученные оценки по физике, математике и литературе. Предусмотреть создание текстового файла, содержащего информацию об абитуриентах, поступающих на указанную специальность.Program Prog; Uses Classes, SysUtils; type Zap=record fio: string[25]; spec: string[25]; ocfiz: string[1]; ocmatem: string[1]; ocliter: string[1]; end; var f: file of string; fio1: string; reg: integer; q: Zap; begin assign(f,'d:\Proga\abitura.dat'); reset(f); writeln ('Режим ввода – 1; режим корректировки - 2'); read(reg); if reg=1 then begin {Режим ввода} Writeln(‘Режим ввода’); Rewrite(f); repeat writeln ('Фамилия и инициалы '); read(q.fio); writeln ('Специальность '); read (q.spec); writeln ('Оценка по физике '); read (q.ocfiz); writeln ('Оценка по математике '); read (q.ocmatem); writeln ('Оценка по литературе '); read (q.ocliter); write(f); until (q.fio<>’***’); end; {Конец режима ввода} if reg=2 then do begin {Режим корректировки} Writeln(‘Режим корректировки’); writeln ('Фамилия и инициалы '); read(fio1); while ((fio1<>’***’) and (not Eof(f))) do begin read(f); if q.fio=fio1 then do begin writeln(‘Fam ’q.fio,’Spec ’, q.spec,’Fiz ’,q.ocfiz,’Matem ’,q.ocmatem,’Liter ’, q.ocliter); write(f); end; end; {пока не конец файла f & фамилия #***} end; {Конец режима 2-корректировки} close(f); end.
Решение задачи: «Создание и корректировка файла, содержащего сведения об абитуриентах»
textual
Листинг программы
const fName='D:\Proga\abitura.dat'; var f: file of Zap; ... begin Assign(f,fName); {$I-} Reset(f); { пробуем открыть } if IOResult<>0 then begin Rewrite(f); { пробуем создать } if IOResult<>0 then begin WriteLn('Ошибка: сбой создания файла ',fName); Exit; end; end; {$I+} ... Close(f); end.
Объяснение кода листинга программы
- Объявляется константа fName, которая содержит путь к файлу с данными об абитуриентах.
- Объявляется переменная f типа file of Zap, которая будет использоваться для работы с файлом.
- Выполняется попытка открыть файл с помощью функции Assign(f, fName).
- Если попытка открытия файла не удалась, выполняется попытка создать новый файл с помощью функции Rewrite(f).
- Если попытка создания нового файла не удалась, выводится сообщение об ошибке и программа завершается.
- Если файл успешно открыт или создан, выполняется основной код программы, который не представлен в данном фрагменте.
- После завершения работы с файлом, он закрывается с помощью функции Close(f).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д