Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


Дан файл, в котором через пробел записаны натуральные числа. Вывести на экран суммы цифр каждого числа.

Файлы в Pascal, типы файлов и основные оперции над ними.

В язык Паскаль выделяются данные файлового типа, которые служат для работы с информацией, расположенной на внешних устройствах. Эта информация формируется во внешней памяти компьютера, образуя некоторую область, называемую файлом. Файлы имеют имя и представляют собой совокупность однотипных элементов. Обычно они применяются, в случаях большого объема данных, долгосрочного хранения, либо необходимости предоставления доступа нескольким приложениям к одной и той же информации.

Файлы принято разделять на физические и логические. Физические файлы имеют имя, и располагаются на съемном носителе, а логические это те переменные файлового типа, которые их представляют в программе.

В Паскале различают следующие три вида файлов (в скобках описаны ключевые слова для инициализации файловой переменной):

· текстовые файлы (text);

· типизированные (file of <тип>);

· бестиповые (file).

Немного позже мы разберемся с каждым из них. А сейчас рассмотрим основные операции для работы с файлами.

Создание файла

Assign(<имя файловой переменной>, <имя файла>)

Процедура Assign связывает переменную файлового типа с физическим файлом. Например, установить соответствие между переменной Fil и текстовым файлом lot, расположенном на диске D, можно так:

Assign(Fil, ‘D:\lot.txt’)

Режим чтения

Reset(<имя файловой переменной>)

Процедура Reset открывает файл в режиме чтения, после чего операторомRead(<файловая переменная>, <считываемый элемент>) можно осуществить последовательное считывание элементов в программу.

Конец файла

ЕOF(<имя файловой переменной>)

Количество элементов в файле заранее не определяется, но часто необходимо знать о моменте достижения конца файла. Для этого в Паскале существует логическая функция EOF, которая проверяет достигнут ли конец, и если это так, то принимает значение True, иначе – False. Осуществляется проверка, как правило, в цикле, в качестве условного выражения выступает функция EOF.

Режим записи

Rewrite(<имя файловой переменной>)

Открыв файл в режиме записи, можно поэлементно записать в него информацию, воспользовавшись процедурой Write(<файловая переменная>, <элемент>).

Закрытие файла

Close(<имя файловой переменной>)

Процедура Close закрывает открытый файл, а также освобождает файловую переменную, указанную в качестве параметра.

Удаление файла

Erase(<имя файловой переменной>)

При помощи процедуры Erase, можно удалить с внешнего носителя, заранее закрытый файл.

Изменение имени файла

Rеnаmе(<имя файловой переменной>, ‘<новое имя файла>’)

Rеnаmе переименовывает физический файл, который перед этим следует закрыть процедурой Close.

Смещение указателя файла

Sееk(<имя файловой переменной>, <номер элемента>)

Процедура Sееk устанавливает позицию указателя в файле на необходимый элемент (нумерация элементов начинается с нуля).

Определение положения указателя

FilePos(<имя файловой переменной>)

Функция FilePos принимает значение порядкового номера элемента, над которым в момент вызова находиться указатель.

Определение количества элементов

FileSize(<имя файловой переменной>)

Функция FileSize определяет количество всех имеющихся в файле элементов.

Текстовые файлы

Текстовые файлы могут состоять из элементов символьного (char) и строкового (string) типа данных. Ключевое слово Text указывает, что файловая переменная создается для работы именно с текстовым файлом:

Var <идентификатор>: Text;

Структура текстового файла представляет собой последовательность строк, которые в свою очередь состоят из символов. Любая строка оканчивается признаком «конца строки», а сам файл признаком «конца файла». Для определения конца файла в Паскаль есть функция EOF, а для конца строки – EOLn:

EOLn(<имя файловой переменной>)

В случае достижения конца строки она (функция EOLn) принимает значение True, в противном случае False.

 

Примеры задач на работу с файлами в Pascal:

1.Создать файл X компонентами которого являются элемента массива M. Переписать из файла X в файл Y все компоненты, которые стоят на четных местах. Прочитать файл Y.
M = (0,1; 5,6; 0.8; 2,4; 7,3; 6,8; 0,5; 2,3;)

const M: array[1..8] of real = (0.1, 5.6, 0.8, 2.4, 7.3, 6.8, 0.5, 2.3);
var
x,y: file of real;

n: real; i: byte;
begin
assign(x,'x.dat');
assign(y,'y.dat');
rewrite(x);
for i:=1 to 8 do
write(x, M[i]);
close(x);
reset(x);
rewrite(y);
i:= 1;
while not EOF(x) do begin
read(x, n);
if not odd(i) then
write(y, n);
i:= i + 1;
end;
close(x); close(y);
reset(y);
while not EOF(y) do begin
read(y, n);
write(n:5:1);
end;
writeln;
close(y);
end.

Дан файл, в котором через пробел записаны натуральные числа. Вывести на экран суммы цифр каждого числа.

var
f: file of char;
c: char; sum, n: word;

begin
assign(f,'nums.txt');
reset(f);
sum:= 0;
while not eof(f) do begin
read(f,c);

if c <> ' ' then begin
val(c, n);
sum:= sum + n;
end
else begin
write(sum:5);
sum:= 0
end;
end;

writeln;
end.



<== предыдущая лекция | следующая лекция ==>
Лидия Урекина. Фото из сети Интернет | Императрица-Екатарина 2 Великая
Поделиться с друзьями:


Дата добавления: 2016-12-31; Мы поможем в написании ваших работ!; просмотров: 2752 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Даже страх смягчается привычкой. © Неизвестно
==> читать все изречения...

4456 - | 4104 -


© 2015-2026 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.