· в строку WRITE(M[i], ‘ ‘);
15. Строка – последовательность символов, т.е. последовательность элементов типа CHAR. Строковая константа – последовательность символов, заключенная в апострофы.
‘informatika’
‘monitor’
‘abc35ed’
В Паскале длина строки ограничена - 255 символов.
STRING – строка, величина с нефиксированной длиной символов, в этом ее преимущество от одномерного массива.
VAR ST:STRING; {255 байт на хранение}
VAR ST:STRING[N]; {N-граница сверху}
Индексация принудительная, обязательно с 1!
Операции над строками.
1) Операция склеивания (соединения). Конкатенация – склеивание строк. Можно склеить сразу несколько.
‘abc’+’cde’=’abccde’
‘cde’+’abc’=’cdeabc’
2) Операции сравнения: =, <, >, <>.
При сравнении строк осуществляется посимвольное сравнение, начиная с младшего байта.
1 этап. Система программирования смотрит на нулевые байты.
2 этап. Если нулевые байты равны, то проверяются остальные символы
Две строки равны если все элементы соответственно равны друг другу.
‘папа’>’мама’, т.к. «м»<«п».
16. Процедуры и функции работы со строками.
Строка – последовательность символов, т.е. последовательность элементов типа CHAR.
Функции:
1) Concat – склеивание строк.
Concat (S1,S2,S3..SN);
ST:=CONCAT(‘infor’,’matika’);
ST:=’informatika’;
Без нее можно обходиться, склеивать строки операцией конкатенации. Все аргументы и значения функции типа STRING;
2) LENGTH – длина одной единственной строки. Значение – величина типа INTEGER.
N:=length(ST);
Write (S[length(S)]);
3) COPY - копирование фрагмента одной строки в другую строку. Образование новой строки из существующей.
COPY (ST,N1,n);
3 аргумента: строка, две величины типа INTEGER;
N1 - № символа, извлекаемого объекта;
n - число извлекаемых символов.
Значение этой функции – величина типа STRING.
ST:=’informatika’;
ST1:=COPY(ST,3,3);
ST1:=’for’;
Для извлечения, например, одного символа, третьим параметром является 1. Строка ST не меняется!
4) POS - от слова позиция, определяется позиция вхождения строки ST1 в строку ST2. ST1 является фрагментом ST2. Не может быть отрицательным.
POS (ST1, ST2);
POS (‘for’,’informatika’);
Процедуры.
1) DELETE –уничтожение символа или фрагмента.
DELETE (ST1,ST2,n);
ST:=’informatika’;
DELETE (ST,3,3); ST:=’inmatika’;
2) INSERT – вставка фрагмента внутрь строки.
INSERT (ST1,ST2,n);
ST1 вставляется в ST2, начиная с n позиции.