UkrReferat.com
найбільша колекція україномовних рефератів

Всього в базі: 75843
останнє поновлення: 2016-12-04
за 7 днів додано 10

Реферати на українській
Реферати на російській
Українські підручники

$ Робота на замовлення
Реклама на сайті
Зворотній зв'язок

 

ПОШУК:   

реферати, курсові, дипломні:

Українські рефератиРусские рефератыКниги
НазваПрямий доступ у системі Турбо Паскаль (реферат)
Авторdimich
РозділІнформатика, компютерні науки
ФорматWord Doc
Тип документуРеферат
Продивилось1627
Скачало456
Опис
ЗАКАЧКА
Замовити оригінальну роботу

Реферат на тему:

 

Прямий доступ у системі Турбо Паскаль

 

Як ми побачили в трьох попередніх підрозділах, доступність елемента

файла, тобто можливість його читання чи створення в ході виконання

програми, залежить від його розташування в послідовності. Досі ми

розглядали підпрограми послідовного доступу до елементів файла. Він

полягає в тім, що елементи файла не задаються явно, а доступність їх у

ході виконання програми цілком визначається їх розташуванням у

послідовності. Спочатку доступний перший елемент, після його обробки –

другий тощо.

 

Але послідовний доступ елементів не завжди зручний. Чи не замислювався

читач над тим, як запрограмувати читання з типізованого файла елемента

за його номером або його заміну, додавання чи вилучення ?

 

Зрозуміло, що задати читання елемента за номером k можна так:

 

reset(f);

 

for i:=1 to k-1 do read(f, x); {пропущено k-1 елемент – доступний k-й}

 

read(f, x).

 

Для заміни елемента файла за його номером k можна "вийти на нього"

шляхом читання попередніх. Далі можна скористатися одним недоліком

системи Турбо Паскаль. Справа в тім, що система дозволяє в стані читання

записувати в файл значення змінних (і лише змінних!). Отже, заміну

елемента можна описати так:

 

reset(f);

 

for i:=1 to k-1 do read(f, x);

 

{пропущено k-1 елемент - доступний якраз k-й}

 

x:=...; write(f, x).

 

Описати в такому ж дусі вилучення й додавання елемента до файла ми

залишаємо вправою для наддопитливих читачів. Але все це "штучки", якими

користуватися не варто.

 

Натомість розглянемо прямий доступ до елементів файла. Його суть у тім,

що елементи задаються номерами в послідовності, яка утворює файл. Такий

доступ здійснюється за допомогою спеціальних підпрограм.

 

Основною є процедура SEEK. У її виклику задається ім’ я файлової змінної

та номер того елемента файла, який стає доступним після виконання

виклику. Номер задається виразом типу LongInt. Наприклад, після виклику

 

Seek ( f, 2)

 

доступним стає третій елемент, оскільки нумерація починається з 0:

 

f0 f1 f2 f3 ... fN

 

 

Значення саме цього елемента буде читатися за виконання виклику

процедури введення read чи цьому елементу буде щось присвоюватися за

виконання write. В обох випадках доступним стане наступний елемент:

 

f0 f1 f2 f3 ... fN

 

 

Підкреслимо, що виклик процедури Seek записується після відкривання

файла за допомогою reset, і після нього можна як читати, так і

записувати елементи файла, тобто режим доступу не має значення.

 

У системі Турбо Паскаль є також кілька допоміжних процедур, що

застосовуються разом із процедурою Seek.

 

Функція FILEPOS задає повернення номера доступного елемента. Єдиним

аргументом у її виклику є ідентифікатор файлової змінної, а повертається

значення типу LongInt. Наприклад, за останнього зображеного значення

файлової змінної f присвоювання

 

A := FilePos ( f );

 

надає змінній А типу LongInt значення 3.

 

Для визначення загальної кількості елементів у файлі використовують

функцію FILESIZE. Її единим параметром є ідентифікатор файлової змінної,

і з її виклику повертається значення типу LongInt. Наприклад, значенням

-----> Page:

0 [1] [2]

ЗАМОВИТИ ОРИГІНАЛЬНУ РОБОТУ