yandex rtb 1
ГоловнаЗворотній зв'язок
yande share

Основы программирования

7. СТРОКИ (STRING)

Данное строкового типа — это ограниченная последовательность произвольных символов (то есть элементов типа char). Постоянные строкового типа записывают при помощи двух штрих-символов (апострофов), охватывающих текст. Строка может иметь от 0 до 255 символов. Например, 'Украина', 'Львовская политехника', " — пустая строка нулевой длины, ' ' — строка, состоящая из одного символа-пропуска.

Переменную строкового типа объявляют с помощью слова string так:

var <переменная> : string[n];

где п -длина строки, n<256. Длину строки можно не указывать. Например,

const      slovo = 'University';

var         frazal : string[45];

fraza.2 : string;

Над переменными строкового типа определены операции объединения (символ операции +) и сравнения (<, <=, >, >=, =, <>). Сравнение двух строк осуществляется слева направо до первых различных символов, причем 'А' < 'В', 'В' < 'С' и т.д. Большим считается символ, который размещён в алфавите дальше (он имеет больший номер в таблице кодов компьютера ASCII). Числовой код символа даёт функция ord, например, ord('B') = 66, ord('A') = 65. Обратное действие выполняет функция chr: chr(66) даёт 'В'.

Пример. Пусть tl = 'New', t2=' Year'. Тогда объединением этих строк будет s := tl + t2 (результат: s = 'New Year'). Здесь s > tl.

Пример. Вывести на экран строчные буквы латинского алфавита и их коды можно таким образом:

for v := 'a' to z do

writeln(v, ord(v):5);

Для обработки данных строкового типа предназначены стандартные функции

length(<cTpoKa>) - определяет количество символов в задан­ной строке;

сору(г, т, п) — даёт п символов строки г, начиная с символа с номером т;

concat(rl,    r2, ..., гn) - объединяет строки rl, ..., гn в одну строку;

pos(rl, r2) - определяет номер символа, с которого начинается вхождение строки rl в строку г2.

и процедуры

insert(rl,  <переменная>,n) - вставляет строку rl в строку, которая задана переменной, начиная с позиции n;

delete (<переменная>, m, n) - удаляет п символов со строки, которая задана переменой, начиная с позиции m;

str (<число>,   <переменная>) - переводит числовое данное в данное строкового типа;

val(rl, si, s2) - засылает в числовую переменную s1 числовой образ строки rl. Если это возможно, то переменная s2 получает значение 0, иначе - числовое значение номера первого недопустимого символа заданной строки.

Указанная переменная передает в процедуру входное данное строкового типа и получает обратно измененную строку - результат выполнения процедуры.

Пример. Пусть переменная Lvov имеет значение 'Львовская политехника'. Рассмотрим примеры функций и их значения:

Функция

length(Lvov)

copy(Lvov, 15, 11)

concat(Lvov,' - 2001')

pos(‘т’, Lvov)

 

13