ТИПЫ ДАННЫХ: СИМВОЛЫ И СТРОКИ СИМВОЛЬНЫЙ ТИП ДАННЫХ CHAR Допустимые значения: один символ из кодовой таблицы (256 символов кода ASCII) Пример: Y f 4 я Д * Формат хранения в оперативной памяти: 1 байт СТРОКОВЫЙ ТИП ДАННЫХ STRING Строка типа String – это цепочка символов типа Char. String используется для хранения текстовых сообщений. Допустимые значения: любой текст длинной не более 255 символов Пример: Всё, что вы хотите написать! При использовании в выражениях строка заключается в апострофы. Формат хранения в оперативной памяти: 1 байт на каждый символ строки + 1 байт под длину строки ТИПЫ ДАННЫХ: СИМВОЛЫ И СТРОКИ ОПИСАНИЕ В РАЗДЕЛЕ КОНСТАНТ Строковая константа – последовательность символов, заключённых в апострофы. Пример: сonst Address = ‘ул. Переверткина, 25‘; ПРИСВАИВАНИЕ ОТДЕЛЬНОГО СИМВОЛА СТРОКИ Для доступа к отдельному символу в строке необходимо указать имя строки и в квадратных скобках номер позиции символа в строке. Пример: Str[5] – пятый символ строки Str. Запись Str[0] даёт доступ к нулевому байту, содержащему значение текущей длины строки. ОПИСАНИЕ В РАЗДЕЛЕ ПЕРЕМЕННЫХ СИМВОЛЬНЫЙ ТИП ДАННЫХ CHAR var <имя переменной>: char; СТРОКОВЫЙ ТИП ДАННЫХ STRING var <идентификатор> : string[<максимальная длина строки>]; Например: var Name: string[20]; var slovo: string; Если длина не указана, то считается, что в строке 255 символов. Поэтому для экономии памяти следует по возможности точно указывать длину используемых строк. ОПЕРАЦИИ НАД СИМВОЛАМИ Chr (x) – возвращает символ, ASCII-код которого равен числу х Ord (x) – возвращает число, ASCII-код которого равен символу х UpCase (x) – преобразовывает символы из строчных букв в прописные Pred (x) – возвращает символ, который предшествует символу х в ASCII-таблице Succ (x) – возвращает символ, который следует за символом х в ASCII-таблице ОПЕРАЦИИ НАД СТРОКАМИ ОПЕРАЦИЯ СЦЕПЛЕНИЯ (+) Например: Выражение ‘A’+’T’+’’+386’ ‘Турбо’+’’+’Паскаль’+’’+’7.0’ Результат ‘АТ 386’ ‘Турбо Паскаль 7.0’ ОПЕРАЦИИ ОТНОШЕНИЯ (=, <>, >,<,>=,<=) Операция отношения имеет приоритет более низкий, чем операция сцепления. Сравнение строк производится слева направо до первого несовпадающего символа, и та строка считается больше, в которой первый несовпадающий символ имеет больший номер в таблице символьной кодировки. Например: Выражение ‘MS-DOS’<‘MS-Dos’ ‘program’>’PROGRAM’ Результат True True СТРОКОВЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ Copy (Str,Poz,N) – выделяет из Str подстроку длиной N символов, начиная с позиции Poz. Например: Значение Str ‘Мама мыла раму’ ‘Маша ела кашу’ Выражение Copy (Str,6,4) Copy (Str,1,8) Результат ‘мыла’ ‘Маша ела’ Concat (Str1,Str2,…,StrN) – выполняет сцепление строк Str1, Str2,…, StrN в одну строку. Например: Выражение Concat (‘Маша ’,’ела ’,’кашу’) Concat (‘Индекс ’,’429537’) Результат ‘Маша ела кашу’ ‘Индекс 429537’ СТРОКОВЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ Length (Str) – вычисляет текущую длину строки Str. Результат имеет целочисленный тип. Например: Значение Str ‘123456789’ ‘System 370’ Выражение Length (Str) Length (Str) Результат 9 10 UpCase (Сh) – преобразовывает символ из строчного в прописной (работает с каждым отдельным символом). Русские литеры не обрабатываются! Например: Значение Ch ‘d’ ‘w’ Выражение UpCase (Сh) UpCase (Сh) Результат ‘D’ ‘W’ СТРОКОВЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ Delete (Str,Poz,N) – удаление N символов строки Str, начиная с позиции Poz. Например: Значение Str ‘абвгде’ ‘река Волга’ Выражение Delete (Str,4,2) Delete (Str,1,5) Результат ‘абве’ ‘Волга’ Insert (Str1,Str2,Poz) – вставка строки Str1 в строку Str2, начиная с позиции Poz. Например: Значения Str1:=‘ма’ Str2:=‘тематика’ Выражение Insert (Str1,Str2,1) Результат ‘математика’ СТРОКОВЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ Pos (Str1,Str2) – обнаруживает первое появление в строке Str2 подстроки Str1. Результат целочисленный тип. Если в Str2 подстроки Str1 не найдено, результат равен 0. Например: Значение Str1 ‘abcdef’ ‘abcdef’ Выражение Pos (‘de’,Str1) Pos (‘r’,Str1) Результат 4 0 Задание: Из символов строки ‘форматирование’ сформировать всевозможные строки, использовав при этом все вышеперечисленные операции, процедуры и функции над строковыми данными.