Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб.роб..doc
Скачиваний:
21
Добавлен:
06.11.2018
Размер:
5.92 Mб
Скачать

Лабораторна робота № 17

Тема: Turbo Pascal. Алгоритми і програми для організації файлів.

Мета: Формування умінь створення програм для організації файлів та опрацювання даних, що містяться у файлах, алгоритмічною мовою високого рівня Turbo Pascal.

1 Теоретичні відомості

Файл – це сукупність даних, які розташовані на зовнішньому носії. Дані у файлі називаються елементами. Файловий тип даних описують у розділі описів типів :

type <ім’я типу> =file of <базовий тип> ;

або безпосередньо у розділі оголошення змінних :

var <список змінних>: file of <базовий тип> ;

Є такі різновиди файлів : файл послідовного доступу і файл прямого доступу.

Для опрацювання файлу його необхідно відкрити, виконати необхідна дії та закрити. Файл можна відкрити лише або для читання, або для записування в нього інформації.

Для роботи з файлами є такі команди :

assign(<ім’я файлу>,<зовнішнє ім’я>) – налагоджує зв'язок між іменем файлу і файлом на зовнішньому носії;

reset(<ім’я файлу>) – відкриває файл для читання з нього даних;

read(<ім’я файлу>,<ім’я змінної>) – читає (вводить) дане з файлу в оперативну пам'ять;

close(<ім’я файлу>) – закриває файл;

rewrite(<ім’я файлу>) – відкриває файл для записування в нього даних;

write(<ім’я файлу>,<ім’я змінної>) – записує (виводить) дане у файл;

eof(<ім’я файлу>) – стандартна функція, яка визначає кінець файлу.

Тут <ім’я файлу> - ім’я файлової змінної, задане у розділі оголошення змінних, <зовнішнє ім’я> - ім’я файлу даних на зовнішньому носії, взяте у лапки.

2 Хід роботи

2.1 Постановка задачі

Сформувати файл, який містить інформацію про 10 автолюбителів: прізвище, марка автомобіля, колір, номер. Використовуючи ці дані, надати інформацію про автолюбителів, які мають “Жигулі” білого кольору і їх номер починається з 45.

2.2 Графічний алгоритм показаний на рис. 17.1

так

ні

ні

так

Рисунок 17.1 – Графічний алгоритм

2.3 Програма мовою Pascal та результати обчислень

Program FF{Файли};

Type

info=record

pr,m,k,no:string;

end;

Var

rr:info;

i,n:integer;

f1:file of info;

Begin

assign(f1,'a');

rewrite(f1);

write('Введіть кількість автолюбителів: ');

readln(n);

for i:=1 to n do

begin

write('Прізвище '); readln(rr.pr);

write('Марка '); readln(rr.m);

write('Колір '); readln(rr.k);

write('Номер '); readln(rr.no);

writeln(rr.pr,' ',rr.m,' ',rr.k,' ',rr.no);

write(f1,rr);

end;

close(f1);

reset(f1);

writeln('Білі жигулі з номером, який починається на 45 :');

writeln(' ');

while not eof(f1) do

begin

read(f1,rr);

if(rr.m='жигулі ')and(rr.k='білий ')and(copy(rr.no,1,2)='45') then writeln(rr.pr,' ',rr.m,' ',rr.k,' ',rr.no);

end;

close(f1);

end.

Результат виконання програми:

Введіть кількість автолюбителів: 10

Іванів жигулі білий 45-96

Петрів волга чорний 85-97

Романів жигулі білий 45-66

Антонів форд синій 55-72

Лесів опель сірий 45-22

Гармаш жигулі білий 33-88

Шишко волга білий 66-12

Дудак ауді червоний 55-96

Гуцуляк жигулі білий 45-00

Носко волга сірий 78-95

Білі жигулі з номером, який починається на 45 :

Іванів жигулі білий 45-96

Романів жигулі білий 45-66

Гуцуляк жигулі білий 45-00