Програмування завжди пов'язане з роботою здеякими даними, зокрема, з рядками. Строковий оператор задається однаково в більшості мов, в тому числі в Pascal: string. Але в Паскалі є свої особливості і властивості, які необхідно знати перед початком роботи.
Перед тим як розбиратися з синтаксисомстрокового типу даних в Паскалі, слід розуміти, що може бути рядком. Фактично в Pascal string - це масив символів, кожен з яких може бути будь-яким елементом з ASCII-таблиці. Тобто в якості рядка може використовуватися будь-яка буква, цифра, знак пунктуації або пробіл.
Максимальне число символів в одному рядкустановить 255 одиниць, і кожен з них отримує відповідний порядковий номер. Тому, якщо необхідно записати великий текст в змінну, слід створити масив string. Pascal коректно обробить цей запит, і можна буде зберігати значно довші текстові дані.
За рядка відповідає тип String. Pascal дозволяє програмісту вказати точне число символів або ж залишити її довжину за замовчуванням - в цьому випадку вона буде дорівнює 255. Для оголошення строкової змінної, перерахувавши однакові аргументи, необхідно після двокрапки вказати ключове слово - string і, при необхідності, в квадратних дужках прописати довжину рядки. У наведеному нижче прикладі задається рядок "str", довжиною 10 символів:
var str: string [10].
У коді програми Pascal string можна задавати будь-які значення - для цього необхідно лише укласти їх в одинарні лапки.
Залежно від мови, визначається і число операцій, з якими може працювати рядок. Паскаль дозволяє проводити порівняння і злиття строкових даних.
Операція злиття (іншими словами конкатенаціяабо зчеплення) виконується для об'єднання декількох рядків в одну. Вона реалізована за допомогою знака складання: "+". З його допомогою можна вибудовувати єдину рядок, що складається з ряду виразів, констант і змінних.
Варто відзначити, що при об'єднанні слів впропозиція шляхом конкатенації рядків, між кожним елементом пробіл буде відсутній. Тому, бажаючи отримати грамотно вибудувану конструкцію, слід в потрібних місцях явно вказувати наявність проміжку, додаючи символ пропуску, наприклад, так: "".
Ще одна операція, поддержваемая в Pascal, - string compare або порівняння рядків. Для неї також використовуються найпростіші математичні знаки:
Результатом операції відносини буде повернення логічного значення true або false.
Порівняння рядків проводиться посимвольний, і признаходженні першої нестикування результат буде визначатися згідно з таблицею кодування. Так, при з'ясуванні, який рядок більше, на позиції, де будуть знаходитися різні символи, буде проведено порівняння коду в даній таблиці, а за результатами його і буде визначений відповідь, який поверне операція.
Як і в будь-якій мові програмування, в Pascalіснує ряд функцій, з якими може бути використана рядок. Паскаль дозволяє копіювати частину змінної, об'єднувати кілька рядків між собою, знаходити подстроку і обчислювати її довжину. Робиться це за допомогою наступних 4 функцій:
Copy (S, poz, n) - тут S - строкова змінна, а poz і n - цілочисельні.
Concat (s1, s2 ...).
Length (str).
Pos (subS, S).
Стандартних процедур, що використовуються в Pascal, всього дві. Перша дозволяє видалити деяку подстроку, а друга - вставити в рядок ряд символів.
Так, процедура Delete видаляє з обраної рядки, з вказаної позиції, подстроку з певного числа символів. Кожен з цих параметрів є аргументом даної операції:
Delete (S, poz, n).
А вставити послідовність символів в рядокможна за допомогою Insert. Процедура має в ролі параметрів три значення - підрядок, рядок і позицію, починаючи з якої буде проведена вставка символів:
Insert (subS, S, poz).
При виконанні завдань, нерідко доводиться змінюватитип змінних. Розглянемо, наприклад, як перетворити string в integer. Pascal не дозволяє складати числа, записані в рядку, тому, для твору суми, їх тип необхідно змінити. Для цього тут є спеціальні процедури: