Лабораторная работа №5
ФАЙЛЫ С ПОСЛЕДОВАТЕЛЬНЫМ И ПРЯМЫМ ДОСТУПОМ
Цель работы: Получение навыков в организации файлов на внешних носителях и использование их для обработки информации.
Задание:
1. Организовать ввод данных с клавиатуры и запись их в файл(ы) с прямым доступом.
2. Прочитать данные из файла(ов) и произвести необходимые вычисления и результаты записать в файл с последовательным доступом.
3. Вывести результаты работы программы на экран, прочитав файл результатов.
Порядок выполнения лабораторной работы
1. Получить вариант задания: 10.Сформировать файл из некоторых чисел. Записать во второй файл из первого максимальный отрицательный элемент, в третий - минимальный положительный.
2. Составить программы вычисления на языке Паскаль. Обозначить в тексте программы порядок выполнения арифметических операций.
3. Ввести и отладить программу в ЭВМ.
4. Выполнить расчёт по программе.
Блок-схема алгоритма программы
Текст программы на языке Паскаль
|
|
program lb5;
uses crt;
const n=8;
var i,max,min:integer;
a:array[1..n] of integer;
f,f2,f3:file of integer;
begin
assign(f,'file1');
rewrite(f);
randomize;
for i:=1 to n do //Цикл записи данных в файл 1
begin
a[i]:=random(198)+(-99);
write(f,a[i]);
end;
close(f);
reset(f);
max:=a[1];min:=a[1];
for i:=1 to n do //Циклы поиска отрицательного и положительного элементов
begin
write(a[i],',');
if (a[i]<0) then max:=a[i];
if (a[i]>0) then min:=a[i];
end;
for i:=1 to n do
begin
if (a[i]<0) and (a[i]>max) then max:=a[i];
if (a[i]>0) and (a[i]<min) then min:=a[i];
end;
assign(f2,'file2'); //Запись в файл 2 максимального отрицательного эл-та
rewrite(f2);
write(f2,max);
close(f2);
assign(f3,'file3'); //Запись в файл 3 минимального положительного эл-та
rewrite(f3);
write(f3,min);
close(f3);
writeln;
reset(f2);
writeln('Максимальное отрицательное:',max);
reset(f3);
writeln('Минимальное положительное:',min);
end.
Работа программы
Вывод: получены практические навыки в организации файлов на внешних носителях и использовании их для обработки информации.