русс | укр

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

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

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

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


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

Типизированные файлы


Дата добавления: 2013-12-23; просмотров: 773; Нарушение авторских прав


Файлы

Exclude(mnosh, s);

Исключение элемента из множества

Include(mnosh, s);

Включение элемента во множество

Процедуры для работы со множествами

WriteLn;

Вывод элементов множества на экран

ReadLn(n);

Repeat

Ввод элементов множества с клавиатуры

Задание множеств

Основные операции со множествами

V := S;

где V – переменная-множество,

S – выражение со множествами того же типа.

Внимание! Элементы множеств нельзя вводить и выводить операторами Read и Write, то есть имя множества не должно появляться в списках операторов ввода-вывода.

Множество можно задать типизированной константой:

Const mnosh : Set Of 1..10 = [2, 3, 8]; задано множество целых чисел с элементами 2, 3, 8.

Множество можно задать в самой программе оператором присваивания:

mnosh := [2, 3, 8]; множество с элементами 2, 3, 8

mnosh := []; пустое множество

mnosh := [2..5]; множество с элементами 2, 3, 4, 5

2.Добавление и удаление элементов множеств

Эти операции осуществляются операторами присваивания:

mnosh := [1..4]; вомножестве элементы 1, 2, 3, 4

mnosh := mnosh + [7, 9]; вомножестве элементы 1, 2, 3, 4, 7, 9

mnosh := mnosh - [2, 3]; вомножестве элементы 1, 4, 7, 9

Введем во множество mnosh несколько чисел циклом с постусловием, пока не напечатаем 0:

Write(‘Очередной элемент:’);

If (n <> 0)

Then Mnosh := mnosh + [n]; очередной элемент обязательно в

Until (n = 0); квадратных скобках

Пусть множество mnosh описано как:

Var mnosh : Set Of 1 . . 100;



Заданы какие-то элементы этого множества. Выведем эти элементы на экран циклом:

For i := 1 To 100 Do перебираем все возможные элементы множества,

If (I In mnosh) если очередной элемент входит во множество,

Then Write(i:5); то выводим его на экран

Для работы со множествами определены следующие процедуры:

mnosh - имя множества,

s - константа (переменная, выражение) того же типа, как и элементы множества.

mnosh - имя множества,

s - константа (переменная, выражение) того же типа, как и элементы множества.

 

В общем случае файлом называется последовательность некоторых однотипных информационных компонентов, сохраняемая во внешней памяти компьютера под одним именем. На этом основании файл считается структурой данных.

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

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

В современных алгоритмических языках такую структуру данных называют файлом.

В отличие от рассмотренных выше структур данных – массивов, множеств и строк, при описании которых необходимо задавать их точный размер для выделения в оперативной памяти необходимого количества ячеек для их размещения, при описании файлов их размер не указывается.

Вторым отличием от массивов – структур данных с произвольным (прямым) доступом к любому их элементу (можно обратиться, например, к пятому элементу вектора, предварительно не считывая предыдущие четыре элемента), файлы являются структурами, как с произвольным, так и с последовательным доступом – для обращения к их пятому элементу необходимо прочитать предыдущие четыре.

Таким образом, файл – это упорядоченная совокупность однотипных элементов (типизированные файлы), имеющая произвольную длину, прямой или последовательный доступ.

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

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

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

Логические файлы хранятся в оперативной памяти компьютера во время работы программы, их создавшей, и стираются после окончания ее работы. На логическом уровне в качестве информационных компонентов файлов могут выступать любые структуры данных: числа, символы, строки, массивы, записи. Компонентами файлов не могут быть только другие файлы. На физическомуровне универсальным информационным компонентом любого файла является байт. Иначе говоря, содержимое любого файла представляет собой последовательность байтов.

Взаимоотношения данной программы с последовательностью байтов данного файла могут строиться по-разному, в зависимости от того, каким определен тип файла в программе.

 

 

В Паскале различают три типа внешних файлов:

1. типизированные

2. текстовые

3. нетипизированные

Они предназначены для хранения данных только одного типа Паскаля: файл целых чисел, вещественных чисел, символов, массивов одного размера, строк одной длины, записей. Не существует только файла файлов и файла объектов.

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

Объявить файл можно двумя способами:

1.указанием его имени и типа в разделе описания переменных Var :

Var f_int : File Of Integer; описан файл целых чисел f_int,

f_int – имя логического файла – файловой переменной

Внимание! При описании файла его размер не указывается.

Структура файла целых чисел:

 

EOF – End Of File – метка конца файла: символ с кодом 26 (CTRL+Z).

Var f_char : File Of Char; описан файл символов f_char,

f_char – имя логического файла –
файловой переменной

Структура файла символов:

 

2.указанием его типа в разделе определения типов TYPE и имени – в разделе описания переменных Var :

Type TFile_int : File Of Integer;

Var f_int : TFile_Int;

 

Таким образом, можно перечислить отличия файла от, например, массива:

· файлы располагаются во внешней памяти – сохраняются после окончания работы программы,

· при описании файлов размеры их не задаются, они могут изменяться при работе программы,

· текущее количество элементов файла в каждый момент работы программы неизвестно, но всегда известно, где конец файла (метка EOF),

· в любой момент программно можно определить длину файла, добавлять в него новые элементы, считывать их, урезать его, переименовывать и даже уничтожить.

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

Assign(имя файловой переменной, ‘путь к физическому файлу’);

Assign(f_int,’D:\User\f_int.dat’);

f_int – имя файловой переменной (логического файла),

D:\User\f_int.dat - полный путь к физическому файлу на внешнем носителе:
диск D:
директория (папка) User
файл f_int_dat.

Внимание! Желательно совпадение имени физического файла и имени файловой переменной; расширение имени типизированного файла .dat.

После установления пути к физическому файлу его можно открыть:

а)открытие нового файла для записи в него данных:



<== предыдущая лекция | следующая лекция ==>
Множества | Функции для работы с типизированными файлами


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


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

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

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


 


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

 
 

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

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