Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Обработка созданных файлов. На основе массива записей создать и распечатать файл типа «в зависимости от варианта (см.ЛАБОРАТОРНУЮ РАБОТУ №2)» ⇐ ПредыдущаяСтр 2 из 2 На основе массива записей создать и распечатать файл типа «в зависимости от варианта (см.ЛАБОРАТОРНУЮ РАБОТУ №2)». Каждая запись состоит из полей, перечисленных в ЛАБОРАТОРНОЙ РАБОТЕ №2. Программу оформить с помощью процедур: создание файла, последовательная распечатка, последовательная обработка, расширение.
Текст программы: program z2; uses crt; type {запись} frukt=record sort:string[18]; ves:real; letn:byte; osen:byte; zimn:byte; end;
zap=array [1..100] of frukt; var i,n:integer; fr:zap; filename:string; f:file of frukt; fruk:frukt;
procedure sozd; begin clrscr; {очистка} writeln('Введите имя файла:'); readln(filename); assign(f,filename); {присвоение имя файла} rewrite(f);{создаем файл} write('Введите количество записей:');readln(n); for i:=1 to n do with fruk do begin write('Введите сорт:');readln(sort); write('Введите вес:');readln(ves); write('Зимний сорт?(да-1, нет - 0):');readln(zimn); write('Осенний сорт?(да-1, нет - 0):');readln(osen); write('Летний сорт?(да-1, нет - 0):');readln(letn); write(f,fruk);{запись в файл} end; close(f); {закрыть файл} end;
procedure korr; begin writeln('Введите имя файла:');readln(filename); assign(f,filename); reset(f); write('Введите количество записей:');readln(n); seek(f,filesize(f)); for i:=1 to n do with fruk do begin write('Введите сорт:');readln(sort); write('Введите вес:');readln(ves); write('Зимний сорт?(да-1, нет - 0):');readln(zimn); write('Осенний сорт?(да-1, нет - 0):');readln(osen); write('Летний сорт?(да-1, нет - 0):');readln(letn); write(f,fruk); end; close(f); end;
procedure pros; begin writeln('Введите имя файла:');readln(filename); assign(f,filename); clrscr;{очистка} {вывод шапки таблицы} writeln('Данные считаны из файла:',filename); writeln(' ╔════════════════════════════════════════════════════════════╗'); writeln(' ║ БАЗА ДАННЫХ "ЯБЛОНИ НА БЕЛАРУСИ" ║'); writeln(' ╠═══╦══════════════════╦═════════╦════════╦═════════╦════════╣'); writeln(' ║НОМ║ СОРТ ЯБЛОНИ ║ ВЕС ║ ЗИМНИЙ ║ ОСЕННИЙ ║ ЛЕТНИЙ ║'); writeln(' ╠═══╬══════════════════╬═════════╬════════╬═════════╬════════╣'); reset(f); for i:=1 to filesize(f) do with fruk do begin read(f,fruk); write(' ║',i:3,'║'); write(sort:18,'║'); write(ves:9:2,'║'); if zimn=1 then write(' ДА ║') else write(' НЕТ ║');
if osen=1 then write(' ДА ║') else write(' НЕТ ║');
if letn=1 then write(' ДА ║') else write(' НЕТ ║'); writeln; end; writeln(' ╚═══╩══════════════════╩═════════╩════════╩═════════╩════════╝'); close(f); writeln('Для продолжения работы нажмите "ENTER"...'); readln; end;
procedure obr; begin clrscr; writeln('Введите имя файла:');readln(filename); assign(f,filename); reset(f); clrscr; writeln(' ╔════════════════════════════════╗'); writeln(' ║ ЗИМНИЕ СОРТА ║'); writeln(' ╠═══╦══════════════════╦═════════╣'); writeln(' ║НОМ║ СОРТ ЯБЛОНИ ║ ВЕС ║'); writeln(' ╠═══╬══════════════════╬═════════╣'); for i:=1 to filesize(f) do with fruk do begin read(f,fruk); if zimn=1 then begin write(' ║',i:3,'║'); write(sort:18,'║'); write(ves:9:2,'║'); writeln; end; end; close(f); writeln(' ╚═══╩══════════════════╩═════════╝'); writeln('Для завершения работы нажмите "Enter"...'); readln; end;
procedure menu; var q:integer; begin while true do begin clrscr; {очистка} writeln('Меню программы'); writeln('1 - Создание файла'); writeln('2 - Последовательная распечатка(Просмотр)'); writeln('3 - Обработка'); writeln('4 - Корректировка (расширение) файла новыми записями'); writeln('5 - Выход'); readln(q); case q of 1:sozd; 2:pros; 3:obr; 4:korr; 5:exit; end; end; end;
begin menu; writeln('Работа с программой завершена! Нажмите "ENTER"...'); readln; end.
|