Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
все лабы.doc
Скачиваний:
9
Добавлен:
05.11.2018
Размер:
1.86 Mб
Скачать

Файли з типом

Файл із типом складається з однотипних компонентів, причому їхня кількість при визначенні файла не визначається. Доступ ведеться через покажчик файла (файлова змінна). При читанні (запису) цей покажчик переміщається до наступного компоненту. Оскільки усі компоненти файла мають однакову довжину, то можливий довільний (прямий) доступ до компонентів файла.

Процедури для роботи з файлами з типом

Для обробки файлів з типом застосовуються наступні процедури:

Rewrite(F) – створює новий файл; якщо файл із таким ім'ям вже існує на диску, то він видаляється і створюється новий. Записувати у файл інформацію можна тільки безпосередньо за кінцем файла.

Reset(F) – відкриває існуючий файл. У файл можна записувати інформацію і читати з нього. Записувати у файл додаткову інформацію можна тільки в кінець файла.

Write(F,V1,[V2…]) – записує у файл вміст зазначених перемінних. Тип файла і змінних має збігатися.

Read(F,V1,[V2…]) – читає з файла компоненти в зазначені змінні. Тип файла і змінних має збігатися.

Seek (F, N:LongInt)- пересуває покажчик файла на n-й компонент (n – ціле вираження). Перший компонент має номер 0.

Функції для обробки файлів з типом

Крім функції Eof для файлів з типом існують такі функції:

FileSize(F):LongInt – повертає кількість компонентів у файлі (файл має бути уже відкритий). Це номер компонента, що випливає за останнім.

FilePos(F):LongInt – повертає номер поточної компонента у файлі (перший компонент має номер нуль).

Завдання до лабораторної роботи

Підготувати дані про абітурієнтів, що складають іспити в інститут. Інформацію про кожного абітурієнта оформити у виді запису, що містить наступні поля:

1 Прізвище, ім'я, по батькові.

2 Рік народження.

3 Рік закінчення школи.

4 Оцінки в атестаті.

5 Ознака - чи потрібен гуртожиток.

6 Оцінки вступних іспитів (4 іспити).

Розробити програму запису підготовлених даних у файл і програму обробки створеного файла: видалити з файла всі записи, що задовольняють умові, і роздрукувати інформацію, що залишилася у файлі. Індивідуальні завдання наведені в таблиці 22.

Таблиця 22

Варіант

Умова задачі

1

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що одержали хоча б одну оцінку 2

2

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що одержали всі оцінки 3

3

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал іспитів менше 4 і хоча б одну оцінку 3 в атестаті

4

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам старше вісімнадцяти років

5

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал в атестаті більше 4,5 і яким потрібен гуртожиток

6

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал в атестаті менше 4

7

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що не одержали ні однієї оцінки 5 на вступних іспитах

8

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають відмінний атестат і одержали всі оцінки 5 на вступних іспитах

Продовження таблиці 22

Варіант

Умова задачі

9

З файла, що містить вихідні дані, видалити записи, що відповідають абітурієнтам, котрим потрібен гуртожиток і які одержали хоча б одну оцінку 3 на вступних іспитах

10

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам старше сімнадцяти років, що мають відмінний атестат

11

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал в атестаті більше 4

12

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що одержали всі оцінки 4 чи 5 на вступних іспитах

13

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що одержали оцінку 2 і закінчили школу 3 роки тому

14

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, не старше 18 років і яким потрібен гуртожиток

15

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал на вступних іспитах менше 4 і яким не потрібен гуртожиток

16

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал іспитів не більше 4,5 і які закінчили школу 2 роки тому

17

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають в атестаті всі оцінки 5

18

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, котрим потрібен гуртожиток і які мають середній бал на вступних іспитах не менше 4,5

19

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають в атестаті одну оцінку 4, інші оцінки 5

Продовження таблиці 22

Варіант

Умова задачі

20

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал в атестаті більше 4,5

21

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал в атестаті більше 3,5 і яким потрібен гуртожиток

22

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що склали вступні іспити на оцінки 4 і 5

23

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що склали вступні іспити тільки на оцінки 5 і які мають середній бал в атестаті не менше 4

24

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що закінчили школу 2 роки тому і яким потрібен гуртожиток

25

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що склали вступні іспити з двома оцінками 4 та іншими оцінками 5

26

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що одержали на вступних іспитах одну оцінку 3

27

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал атестата більше 4 і які склали вступні іспити тільки на 4

28

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що одержали на вступних іспитах хоча б одну оцінку 5

29

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають середній бал на вступних іспитах не менше 4 і які старші 18 років

30

З файла, що містить вихідні дані, видалити записи, які відповідають абітурієнтам, що мають в атестаті тільки оцінки 4 і 5