Строки

  • docx
  • 26.12.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л3-0025407.docx

Строки

Строка - последовательность любых символов кодовой таблицы персонального компьютера. При использовании в выражениях строка заключается в апострофы. Для определения данных строкового типа используется идентификатор string, за которым может следовать в квадратных скобках значение длины строки. Если это значение не указано, то по умолчанию длина строки равна 255 байт.

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

Строковые данные могут использоваться в программе также в качестве констант.

К любому символу в строке можно обратиться, указав имя строки и номер символа в квадратных скобках.

Операции над строками

Над строковыми данными допустимы операции сцепления и операции отношения.

Операция объединения (+) применяется для объединения нескольких строк в одну, присоединяя начало второй строки к концу первой, начало третьей строки к концу второй и т. д. Для данной операции существует нейтральный элемент, не влияющий на ее результат, - это строка нулевой длины (пустая строка), обозначаемая двумя рядом стоящими апострофами (‘ ‘). Такую строку можно присоединить к любой строке справа или слева и строка не изменится. В операциях сцепления длина результирующей строки не должна превышать 255. Операция объединения строк некоммутативная, т. е. a+bb+a.

Операции отношения (=, <>, >, <, >=, <=) проводят сравнение двух строковых операндов и имеют приоритет более низкий, чем операция сцепления. Сравнение строк происходит слева направо до первого несовпадающего символа, и та строка считается больше, в которой первый несовпадающий символ имеет больший номер в стандартной таблице обмена информацией. Например, ‘program’>’PROGRAM’, ‘MS-DOS’<’MS-Dos’. Если строки имеют различную длину, но в общей части символы совпадают, то короткая строка меньше, чем длинная. Строки считаются равными, если они полностью совпадают по длине и имеют одни и те же символы.

Для присваивания строковой переменной результата строкового выражения используется оператор присваивания (:=). Если значение переменной после выполнения оператора присваивания превышает по длине максимально допустимую при описании величину, все лишние справа символы отбрасываются.

Для обработки строковых данных можно использовать специальные процедуры и функции.

Строковые процедуры и функции

Length (S) – вычисляет текущую длину в символах строки S. Результат имеет целочисленный тип, например:

Значение S

Выражение

Результат

‘1234567’

Length (S)

7

‘system 370’

Length (S)

10

Delete (S, P, N) – удаление N символов строки S, начиная с позиции Р. Если значение Р>255, возникает программное прерывание.

Значение S

Выражение

Результат

абвгде

delete (S, 4, 2)

абве

река Волга

delete (S, 1, 5)

Волга

Concat (S1, S2, …, SN) – выполняет сцепление строк S1, S2, …, SN в том порядке, в каком они указаны в списке параметров. Сумма всех сцепленных строк не должна превышать 255.

Insert (S1, S2, P) – вставка строки S1 в строку S2, начиная с позиции Р, например:

S1:=’че’;

S2:= ’знание’;

Insert (S1, S2, 4);

В результате выполнения последнего выражения значение строки S2 станет равным ‘значение’.

Copy (S, P, N) – выделяет из строки S подстроку длиной N, начиная с позиции Р. Если Р>length(S), то результатом будет пробел. Если Р>255, возникнет ошибка при выполнении. P, N – целочисленные выражения.

Pos (S1, S2) – обнаруживает первое появление строки S1 в строке S2. Результат имеет целочисленный тип и равен номеру той позиции, где находится первый символ строки S1.

Значение S2

Выражение

Результат

‘abcdef’

pos (‘de’, S2)

4

‘abcdef’

pos (‘r’, S2)

0

Val (S, i, c) – преобразует строковое значение S в величину целочисленного или вещественного типа и помещает результат в i. Значение S не должно содержать незначащих пробелов в начале и в конце. Если во время преобразования ошибки не обнаружено, значение с (целочисленная переменная) равно 0., если ошибка обнаружена (например, литерное значение переводится цифровое), с будет содержать номер позиции первого ошибочного символа, а значение i будет не определено.

Значение S

Выражение

Результат

1450

val (S, i, c)

i=1450 c=0

’14.2E+02’

val (S, i, c)

i=14.2E+02 c=0

’14.2A+02

val (S, i, c)

i=0 c=5

UpCase (S) – преобразует строчные буквы в прописные. Обрабатывает буквы только латинского алфавита.



 

Скачано с www.znanio.ru