Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
информат. экзамен.doc
Скачиваний:
25
Добавлен:
11.02.2016
Размер:
161.79 Кб
Скачать

21.Опис файлових змінних у мові Паскаль.

Як будь-яка змінна програми, файл повинен бути оголошений у розділі опису змінних. При описі файлу вказується тип елементів файлу.

Var

a:= file of char {файл символів}

b:= file jf char {файл дійсних чисел}

c:= file of char {файл цілих чисел}

Файл, компонентами якого є дані символьного типу називається текстовим. Тому запис VAR a: file of char еквівалентний a: text.

Безтипові файли описуються VAR b:file;

19. Алгоритми роботи з рядками. Процедури та функції обробки рядків.

Функції обробки.

1. LENGTH (x) – довжина. Вбудована функція, що дозволяє визначити фактичну довжину рядка, який зберігається у вказаній змінній.

k:=Length(x);

l:=length(y);

n:=Length(x+y); …

2. COPY (R, N, K) – копіювання. Функція дозволяє копіювати фрагмент рядка з одної змінної в іншу. Викликаючи дану функцію необхідно вказати такі параметри:

R – ім’я рядка, з якого береться фрагмент;

N – позиція у рядку, починаючи з якого буде

копіюватися фрагмент;

K – кількість копіюємих символів.

x:=’інформатика’;

y:=Copy (x, 3, 5); …

3. POS (<фрагмент>,<рядок>) – пошук. За допомогою даної функції здійснюється пошук певного фрагменту. Якщо заданий фрагмент у рядку не існує, то функція повертає номер позиції в рядку з якої цей фрагмент починається. У випадку якщо фрагмент не знайдено то функція повертає «0». Функція вимагає повного спів падання фрагменту в рядку та фрагменту який шукається. Причому великі та маленькі літери вважаються різними.

x:=’ай’;

y:=’файл’;

i:=Pos (x, y); …

4. UPCASE (x[i]) – перетворення літери в прописну. Процедури.

1. INSERT (F, R, N) –вставка. За допомогою даної процедури можна вставити фрагмент з вказаної позиції.

Insert (<фрагмент>, <рядок>, <позиція з якої вставлено фрагмент в рядок>).

2. DELETE (R, N, K) видалення. Процедура знищує у визначеному рядку фрагмент, визначеної довжини, починаючи з іказаної позиції.

DELETE (<рядок>, <позиція>, <кількість символів, які буде видалено>)

Приклад :программа трансформації слова.

Program P1;

Var x: string[10];

Begin

x:=’форма;

insert (‘I’,x,2); {фіорма}

delete (x,3,1); {фірма}

Writeln (x);

Readln;

End.

3. STR(<число>, <змінна>). Процедура переводить числове дане в дане типу рядок.

18. Рядкові величини. Операції над рядковими величинами.

У кожному комп'ютері можуть зберігатися числа та символьні дані. Кожен символ займає 1 байт пам’яті. Для даного, значення якого є одиничний символ, використовується тип даних CHAR. У мові ТП існує тип даних, призначений для обробки ряду символів STRING. Рядок може містити від 0 до 255 символів.

Змінна типу STRING складається з ланцюжка символів, тобто елементів типу CHAR. Рядки виводяться на екран монітора стандартними процедурами WRITE, WRITELN, та вводяться в пам’ять комп’ютера стандартними процедурами READ, READLN.

Оголошення рядкових типів та рядкових змінних.

Змінна типу STRING може бути оголошена наступним чином:

Var <змінна>:string [n];

Приклад

VAR

a: string;

b: string [45]; {довжина рядка не повинна перевищувати 45 символів + 1 байт для зберігання довжини рядка}.

Де в дужках зазначається максимальна довжина рядка, якщо розмір не вказано то він береться максимальною 255.

Операції над рядками. Приклади.

Присвоювання. Оператор присвоювання має такий вигляд:

<ім’я змінної>:=<рядковий вираз>

Об’єднання рядків. Ця операція дозволяє з’єднати два рядки в один, приєднавши початок другого рядка до кінця першого. Операція позначається символом «+».

Приклад x:=’тепло’;

y:=’хід’;

z:=x+y;

Порівняння (=, <>, <=, >=, >, <). Де (=) «рівність» означає посимвольний збіг рядків, а (<>) «не дорівнює» означає, що рядки не збігаються. При застосуванні решти операторів порівняння рядків відбувається зліва на право до першого не співпадаючого символу. Довшим вважається той рядок, в якого перший не співпадаючий символ має більший номер у таблиці кодів (‘abd>’abc’). Якщо рядки різної довжини то коротший рядок вважається меншим.