для экзамена по инф Брэ / лекции паскаль / Lekcija5
.docТема 5. Строки. Процедуры и функции действий над строками. Примеры обработки строк.
Тип STRING в Турбо Паскале используется для обработки текстов. Он во многом похож на одномерный массив символов ARRAY[0..N] of CHAR , однако в отличие от последнего, количество символов в строке- переменной может меняться от 0 до N, где N-максимальное количество символов в строке. Значение N определяется объявлением типа STRING[N] и может быть любой константой порядкового типа. Самый первый байт в строке имеет индекс 0 и содержит текущую длину строки. Первый значащий символ строки занимает второй байт
и имеет индекс 1.
Значение ORD(ST[0]), т. е. текущую длину строки, можно получить и с помощью функции LENGTH(ST)
VAR FIO: STRING [15];
ADR: STRING [20];
POST: STRING;
К строкам можно применять операцию «+»- сцепление. Например,
ST:=’a ’+’b’;
ST: =ST+’c’;(ST=»abc»);
Все остальные действия над строками и символами реализуются с помощью описываемых ниже стандартных процедур и функций.
-
CONCAT (S1,[,S2,...,Sn])- функция типа STRING , возвращает строку, представляющую собой сцепление строк – параметров S1, S2, S3,...,Sn.
-
COPY (ST, INDEX, COUNT)-функция типа STRING ; копирует из строки ST COUNT символов, начиная с символа с номером INDEX;
-
DELETE (ST, INDEX, COUNT)- процедура ; удаляет COUNT символов из строки ST , начиная с символа с номером INDEX.
-
INSERT(SUBST, ST , INDEX)-процедура ; вставляет подстроку SUBST в строку ST , начиная с символа с номером INDEX.
-
LENGTH (ST)-функция типа INTEGER; возвращает длину строки ST.
-
POS (SUBST, ST) – функция типа INTEGER ; отыскивает в строке ST первое вхождение подстроки SUBST и возвращает номер позиции, с которой она начинается ; если подстрока не найдена, возвращается ноль.
-
STR (X [:L [: M], ST)- процедура; преобразует число X любого вещественного или целого типов в строку символов ST (так L- общая ширина поля, выделенного под символьное представление числа X , M- количество символов в дробной части).
-
VAL (ST, X , CODE)- процедура; преобразует строку символов ST во внутреннее представление целой или вещественной переменной X, которое определяется типом этой переменной; параметр CODE содержит ноль, если преобразование выполнено, в противном случае он содержит номер позиции в строке ST, где обнаружен ошибочный символ.
-
UPCASE (CH) – функция типа CHAR ; возвращает для символьного выражения CH , которое должно представлять собой строчную латинскую букву, соответствующую заглавную букву; если значением CH является любой другой символ ( в том числе строчная буква латинского алфавита), функция возвращает его без преобразования.
Операции отношения =, <>, >, <, >=,<= выполняются над двумя строками посимвольно, слева направо, с учетом внутренней кодировки символов.
1ocн[107-109]
2ocн[135-140] 3ocн[154-165] 4доп[57-82]
Контрольные вопросы
-
Какие функции используются для обработки строк?
-
Какие процедуры используются для обработки строк?
-
В чем отличие строки от одномерного массива символов Array [0..N] of char?
-
Какое максимальное значение может принимать длина строки?
-
Какой индекс имеет самый первый байт в строке?
-
Какой символ возвращает функция UPCASE для буквы русского алфавита?