Для обпрацювання більших, ніж окремі символи, текстових одиниць – рядків, в Паскалі існує тип даних, який називається String (рядок).
Значеннями цього типу є рядки, що знаходяться в одинарних лапках, наприклад, ‘школа’, ‘Pascal’, ‘Миру-мир’, ‘Куріння – шкідлива звичка’. Серед різноманітних рядків є порожній ‘’, його не слід плутати з рядком ‘ ’, що містить один символ, який не відображається на екрані, - пропуск.
Цей тип описується так:
var ім’я рядка : string [n];
де n – максимальна кількість символів рядка (якщо цей параметр не вказано, отримаємо рядок довжиною 255 символів).
Операції над рядками:
- введення, виведення ();
- присвоювання (:=);
- з’єднання (+);
- порівняння рядків.
Засоби опрацювання рядків:
concat(s1, s2, …, sn:string):string; - з’єднує послідовно рядки s1, s2, …, sn і повертає отримане значення.
copy(s:string; i:integer; k:integer):string; - виділяє з рядка s підрядок, починаючі з позиції і, довжиною в kсимволів;
(Увага! s[i]:char; - один символ рядка s, що знаходиться на i-тому місці)
length(s:string):byte; - повертає довжину (кількість символів) рядка s.
pos(s1:string; s:string):byte; - повертає позицію, з якої підрядок s1 перший раз зустрічається в рядку s.
delete(s:string; i:integer; k:integer); - видаляє з рядка s k символів, починаючи з позиції і.
insert(s1:string; s:string; i:integer); - вставляє підрядок s1 до рядка s, починаючи з позиції і.
Послідовність вивчення рядків:
- перед поясненням нового матеріалу доцільно актуалізувати знання учнів стосовно літерного (символьного) типу даних та його особливостей, а також поняття масиву;
- пояснення поняття типу даних «рядок»; опис типу;
- приклади значень цього типу; порівняння рядкового та символьного типу даних, порівняння рядку та масиву (слід обов’язково звернути увагу учнів на відмінності порожнього рядка та рядка, що містить один символ - пропуск);
- опис типу (звернути увагу учнів на те, що максимальна кількість символів рядка є різною для різних середовищ програмування)
- бажано пояснити учням відмінності у процесі і результаті порівняння числових даних та рядкових даних (наприклад, 111>2, але ‘111’<’2’);
- відпрацювання на задачах засобів опрацювання рядків:
a) програми, в яких рядок опрацьовується як масив символі, тобто звернення до символу рядка як до елемента масиву s[i];
b) програми з використанням специфічних засобів опрацювання рядків, але без використання циклічних процесів;
c) програми з використанням специфічних засобів опрацювання рядків з використанням циклічних процесів.
Типові помилки учнів при розв’язуванні задач з використанням рядків:
- запис значення рядкового типу даних без використання одинарних лапок;
- учні не розуміють відмінностей у результатах виконання операторів r:=r+s[i]; та r:=s[i]+r;
- не відрізняють порожній рядок ’’ та рядок, що містить один символ – пропуск ’̺’;
- нерозуміння ситуацій, коли результат дії специфічних засобів опрацювання рядків потрібно присвоїти окремо взятій змінній (наприклад, функції pos, length, copy, concat), а коли – ні (наприклад, процедури delete, insert);
- некоректна послідовність подання параметрів процедур та функції опрацювання рядків;
- у засобах оапрцювання рядків некоректне використання парламентів (наприклад, замість кількості символів вказують номер символу в copy, insert, delete).