Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Обработка созданных файлов. На основе массива записей создать и распечатать файл типа «в зависимости от варианта (см.ЛАБОРАТОРНУЮ РАБОТУ №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.

 

 

Date: 2015-07-27; view: 222; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию