Запись и вывод данных в/из типизированного файла - Pascal ABC
Формулировка задачи:
Доброго времени суток!
Необходима помощь: нужно организовать ввод данных в типизированный файл (.dat ) с возможность вывода их ( данных ) в виде таблицы через оный.
Код:
Решение задачи: «Запись и вывод данных в/из типизированного файла»
textual
Листинг программы
type vuzi = record nazv_v:string[20]; chislo_s:1..500; kol_f:1..50; kol_kaf:1..50; end; const n=5; var f:file of vuzi; v:vuzi; i,k:byte; a:string; begin assign(f,'cuzy.dat'); rewrite(f); writeln('Введите данные о ',n,' ВУЗах'); for i:=1 to n do begin writeln('ВУЗ ',i); with v do begin write('Задайте название: ');readln(nazv_v); write('Задайте число студентов: ');readln(chislo_s); write('Задайте кол-во факультетов: ');readln(kol_f); write('Задайте кол-во кафедр: ');readln(kol_kaf); write(f,v); end; end; writeln('Содержание файла'); reset(f); writeln('Название вуза',' Кол-во студентов',' Кол-во факультетов',' Кол-во кафедр'); writeln; while not eof(f) do begin read(f,v); with v do writeln(nazv_v:4,' ',chislo_s:4,' ',kol_f:2,' ',kol_kaf:2); end; /// writeln('Поиск по названию вуза: задайте название:');readln(a); k:=0; reset(f); while not eof(f) do begin read(f,v); with v do if(a=nazv_v) then begin k:=1; writeln('***'); writeln('Название вуза: ', nazv_v); writeln('Общее число студентов: ', chislo_s); writeln('***'); end; end; close(f); if k=0 then write('Такого ВУЗа нет') end.
Объяснение кода листинга программы
- Создание типа данных
vuzi
с полямиnazv_v
,chislo_s
,kol_f
,kol_kaf
. - Объявление переменных: n, f, v, i, k, a.
- Открытие файла 'cuzy.dat' для записи.
- Вывод сообщения
Введите данные о ... ВУЗах
. - Цикл for для ввода данных о каждом из n ВУЗов.
- Внутри цикла: чтение названия ВУЗа, числа студентов, числа факультетов и числа кафедр.
- Запись данных в файл.
- Вывод сообщения
Содержание файла
. - Чтение данных из файла до конца файла.
- Цикл while для поиска данных по названию ВУЗа.
- Чтение данных из файла.
- Проверка совпадения названия ВУЗа с введенным пользователем.
- Если совпадение найдено, вывод данных о ВУЗе.
- Установка переменной k в 1, если совпадение найдено.
- Вывод сообщения
***
. - Вывод названия ВУЗа и числа студентов.
- Вывод сообщения
***
. - Закрытие файла.
- Проверка значения переменной k.
- Вывод сообщения
Такого ВУЗа нет
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д