Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ОАиП_1 / Module2 / УЭ-5'

.html
Скачиваний:
17
Добавлен:
25.02.2016
Размер:
10.34 Кб
Скачать

Документ без названия

Строки    Строка – это последовательность символов кодовой таблицы       При использовании в выражениях строка заключается в апострофы.       Количество символов в строке может изменяться от 0 до 255.       Не допустимо применение строковых переменных в качестве селектора в операторе CASE.   Пример Описание Type     Stroke=string [255]; Var     St: string;     St1: string [50]; Инициализация       Обращение к символу в строке осуществляется по индексу, как в массиве:     St[i];     St:='Minsk';     Write (st) ->М Операции       Над строковыми данными допустимы операции сравнения и сцепления. Причем операция сцепления всегда выполняется в первую очередь.       'a'+'b'+'c'='abc'       Сравнение строк производится слева направо до первого несовпадающего символа, и та строка считается больше, в которой первый несовпадающий символ имеет больший размер в кодовой таблице.       Рассмотрим стандартные функции и процедуры для строк: Процедуры и функции Значение Length (строковая переменная)       Позволяет определить фактическую длину текстовой строки, хранящейся в указанной переменной (а не величину предельного размера строки, установленную при объявлении) UpCase (строковая переменная)       Позволяет преобразовывать символ любой литеры из строчной в прописную. Эта функция рассчитана на обработку одного символа. Поэтому для обработки строки символов с помощью этой функции необходимо организовывать цикл.       Примечание: русские литеры этой функцией не обрабатываются. Copy(имя, позиция, число)       Позволяет копировать фрагмент некоторой строки из одной переменной в другую.       Имя – имя строки, из которой должен извлекаться копируемый фрагмент       Позиция – позиция в строке, начиная с которой будет копироваться фрагмент       Число – число копируемых символов Pos (фрагмент, слово)       Определяет поиск некоторого фрагмента в слове.       Если заданный фрагмент в слове присутствует, то функция возвращает номер позиции в строке, с которой этот фрагмент начинается.       Если фрагмента в строке не найден, то функция возвращает 0. Insert (строка, строка1, позиция)       Позволяет вставить фрагмент из одной строки в другую.       Вставляет в «строка1» начиная с «позиции» «строка». Delete (строка, количество, позиция)       Позволяет удалить фрагмент из строки.       Удаляет «строка» фрагмент состоящий из «количество» символов начиная с «позиции».       Пример 1. Необходимо в строке символов заменить все А на *. Var     St:string; Begin     Read (st);     For i:=1 to length(st) do         If (st[i]='a') or (st[i]='A') then             St[i]:='*'     Write(st); End.       Пример 2. Необходимо найти в строке символов длину самой длинной цепочки идущих подряд символов а. Var     St, ts: string;     Md: integer; Begin     Write('Введите строку');     Readln(st);     Md:=0;     Ts:='a';     While pos (ts,st) 0 do         Ts:=ts+'a';     Md:=length(ts)-1;     Writeln ('md=',md);     Readkey; End.       Пример 3. Записать некоторую последовательность символов в обратном порядке. Var     St:string;     I:integer; Begin     Read (st);     For i:=length (st) downto 1 do     Write (st[i]);     Readkey; End.

Соседние файлы в папке Module2