Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практика.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
2.23 Mб
Скачать

Занятие №16: Понятие о файловом типе. Типы файлов. Процедуры и функции для работы с файлами.

  1. Создать файл, состоящий из n целых чисел. Вывести содержимое этого файла на экран.

program prac1;

const N=10;

var f:file of integer;

t:integer;

begin

assign(f,'c:\lab_15_1.int');

rewrite(f);

repeat

readln(t);

write(f,t);

until filepos(f)=N;

seek(f,0);

writeln('___________');

repeat

read(f,t);

writeln(t);

until eof(f);

close(f);

writeln('Vipolnil Kovrigin Anatoliy');

readln;

end.

  1. Н айти количество нечётных отрицательных элементов файла, созданного в задании 1, и полученный результат записать в новый файл.

program prac2;

var f:file of integer;

c,t:integer;

begin

assign(f,'c:\lab_15_1.int');

reset(f);

repeat

read(f,t);

if ((t shr 1) shl 1<>t) and (t<0) then inc(c);

until eof(f);

close(f);

assign(f,'c:\lab_15_2.int');

rewrite(f);

write(f,c);

close(f);

readln;

end.

  1. Организовать файл записей PRICE, содержащих следующие поля: название товара, название магазина, в котором продаётся товар, стоимость товара в гривнах. Написать программу, выполняющую следующие действия: Ввод с клавиатуры данных о нескольких товарах, вывод на экран информации о товаре, название которого введено с клавиатуры, если таких товаров нет, выдать соответствующее сообщение.

program prac3;

label z;

type string50=string[50];

tvr = record

n:string50;

m:string[40];

p:real;

end;

var f:file of tvr;

t:tvr;

i:integer;

q:string50;

begin

assign(f,'c:\lab_15_3.rec');

rewrite(f);

readln(i);

while i>=1 do

begin

writeln('Vvedite nazv tovara');

readln(t.n);

writeln('Vvedite cenu');

readln(t.p);

writeln('Vvedite magazin');

readln(t.m);

dec(i);

write(f,t);

end;

seek(f,0);

writeln('Vvedite nazv tovara');

readln(q);

repeat

read(f,t);

if t.n=q then

begin

writeln('nazv tovara - ',t.n);

writeln('cena tovara - ',t.p:0:2);

writeln('magazin - ',t.m);

goto z;

end;

until eof(f);

writeln('takih tovarov net');

z:

close(f);

readln;

end.

З анятие №17: Записи. Обработка массива записей.

  1. Описать запись с именем PRICE, содержащую следующие поля: название товара, название магазина, в котором продаётся товар, стоимость товара в гривнах. Написать программу, выполняющую следующие действия.Ввод с клавиатуры данных в массив, состоящий из десяти записей типа PRICE, вывод на экран информации о товаре, название которого введено с клавиатуры, если таких товаров нет, выдать соответствующее сообщение. Упорядочить записи по алфавиту (название товара).

program prac3;

label z;

const N=10;

type string50=string[50];

price = record

n:string50;

m:string[40];

p:real;

end;

var f:array[1..N] of price;

i:integer;

q:string50;

begin

i:=N;

repeat

writeln('Vvedite nazv tovara');

readln(f[i].n);

writeln('Vvedite cenu');

readln(f[i].p);

writeln('Vvedite magazin');

readln(f[i].m);

dec(i);

until i=0;

writeln('Vvedite nazv tovara');

readln(q);

i:=N;

repeat

if f[i].n=q then

begin

writeln('nazv tovara - ',f[i].n);

writeln('cena tovara - ',f[i].p:0:2);

writeln('magazin - ',f[i].m);

goto z;

end;

dec(i);

until i=0;

writeln('takih tovarov net');

z:

readln;

end.