русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Eof (f)


Дата добавления: 2015-01-16; просмотров: 571; Нарушение авторских прав


Поскольку количество записей в файле неизвестно, ис­пользовать при чтении данных файла цикл-пересчет нельзя. Поэтому применяется цикл-пока. Его заголовок

While not eof (f) do

надо понимать так: пока не встретился признак конца файла, выполнять цикл.

Пример.Дан файл целых чисел. Посчитать количество положительных, отрицательных и нулевых элементов файла.

program Р39;

constk= 15;

var f:file of integer; a, i, n, p, z:integer;

Begin

assign (f, ‘F.DAT’);

rewrite (f); {создание файла}

writeln (‘введите’, k, ‘целых чисел, после каждого нажимайте <Enter>‘);

fori: = 1tokdo

Begin

readln(a);

write (f, a)

end;

close (f); {закрытие файла для операции записи}

{решение задачи — подсчет различных элементов}

n: = 0; p: = 0; z: = 0; {n-отрицательные, р-положи­тельные, z -нули}

reset (f);

while not eof (f)do

Begin

read(f, a);

ifa = 0then z: = z + 1;

if a < 0then n: = n + 1;

if a > 0then p: = p + 1

end;

write (‘ n = ‘, n, ‘ z = ‘, z, ‘ p = ‘, p)

End.

Пример. Пусть требуется расширить данный файл, добавив в него новые данные. Как известно, файл с данными нельзя открывать для за­писи, поэтому для решения подобных задач необходимо исполь­зовать вспомогательный файл.

Решение задачи расширения файла складывается из сле­дующих этапов:

1) открыть данный файл f для чтения, а вспомогательный g — для записи;

2) читать данное из исходного файла f и записывать его тут же в файл g;

3) после окончания переписывания данных закрыть файл f;

4) вводить новые данные с клавиатуры и записывать их в файл g, добавляя к уже имеющимся там данным файла f;

5) закрыть файл g;

6) открыть файл f для записи, а файл g — для чтения;

7) читать данные из файла g и записывать их в файл f.

Таким образом, в файле f к старым данным добавятся но­вые. Если необходимо вставить новые данные в середину файла, то надо во втором пункте решения контролировать считываемые данные и, дойдя до места вставки, приостано­вить чтение, записать требуемые данные в файл g, а затем до­писать туда оставшиеся из исходного файла (пункты 3 и 4), далее выполнить пункты 5, 6, 7.



programР40;

varf, g: file of integer; a: integer;

Begin

assign(f, ‘F.DAT’);

assign(g, ‘G.DAT’); .

{перезапись данных из исходного файла во вспомогатель­ный}

reset (f);rewrite (g);

while noteof(f) do

Begin

read(f, a);

write(g, a);

end;

close(f); {добавление данных во вспомогательный файл}

readln(a);

while а <> 0 do {признак окончания ввода новых данных - нуль}

Begin

write (g, a);

readln(a)

end;

close(g);

reset(g);rewrite(f); {перезапись данных назад в исходный файл}

while noteof (g)do

Begin

read(g, a);

write(f, a);

End

End.

 



<== предыдущая лекция | следующая лекция ==>
Краткие теоретические сведения. | Методические указания по работе и задания


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.441 сек.