Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция программирование для студентов.doc
Скачиваний:
6
Добавлен:
04.11.2018
Размер:
266.75 Кб
Скачать

Структурированные типы данных

1. Строковый тип (String) – последовательность символов языка, заключенная в апострофы.

Длина строки не более 255 символов.

Например: ‘A’; ‘таблица значений’; ‘575’, mdhfsk’,’мама’.

Строку можно задать 2 способами:

  1. имя: string; {Объявлена переменная строка длиной 255 символов (максимум)}

  2. имя: string[длина строки]; {Объявлена переменная строка указанной длины}

Над строковыми переменными допустимы следующие операции: сравнения, соединения, копирования, вставки, удаления, определения длины строки, определение позиции определенного символа.

Функции со строковыми переменными:

  1. Определение длины строки

Форма записи: Length(x) – функция типа integer, где х – тип string.

Например: x:=’Привет’; y:=Length(x) – y = 6

  1. Соединение строк

Форма записи: CONCAT(s1[s2,s3,…sn]) – функция типа string. Выполняется соединение (слияние) строк от s1 до sn (результат заносится в переменную s1)

Например: a) s1:=’Всем’; s2:=’привет’; s3:=’!’;

s1:=concat(s1,’ ‘,s2,s3) { s1=’Всем привет!’}

б) s:=concat(‘12’,’345’) {s=’12345’}

в) d:=concat(s1,s2) {d=s1+s2}

  1. Копирование символов

Форма записи: COPY(s,n,c), где s – тип string, n – номер позиции копируемого символа, c – количество копируемых символов.

Функция типа string, копирует символы из строки s количеством n, начиная с позиции c.

Например: s:=’сороконожка’ ; y:=copy(s,7,3) {y=’нож’}

  1. Удаление символов

Форма записи: DELETE(s,n,c), где s – тип string, n – номер позиции копируемого символа, c – количество копируемых символов.

Функция типа string удаляет из строки s символы количеством c, начиная с позиции n.

Например: s:=’строка’; y:=delete(s,2,4) {y=’са’}

  1. Вставка символов

Форма записи: INSERT(s,v,n) , где s – результат (тип string), v – вставляемая подстрока, n – номер позиции вставки подстроки

Функция типа string вставляет подстроку v в строку s, начиная с позиции n.

Например: s:=’птика’; v:=’рак’; y:=insert(s,v,2) {y=’практика’}

  1. Определение позиции символа в строке

Формат записи: POS(p,s), где p – символ, позицию которого следует определить; s - строка, в которой следует определить позицию буквы.

Функция типа integer отыскивает в строке s первое вхождение подстроки p и определяет номер позиции, с которой подстрока начинается. Если подстрока не найдена, то значение функции = 0

Например:y:=pos(‘a’,s) – определение позиции символа ‘а’ в строке s

Преобразование строк

        1. Преобразование численного значения в его строковое представление

Формат записи: 1 способ: STR(X,ST)

2.способ: STR(X:WIDTH:DEC,ST)

Процедура преобразует число x (вещественного или целого типа) в строку символов st.

x:width – для целых чисел, указывает общую ширину поля, выделенного под символы.

x:width:dec – для действительных чисел, указывает ширину поля и количество значков после запятой

Например: a) str(pi:6:2,st) {st=’3,14’}

б) R:=123; str:=(R:5,st) {st=’_ _ 123’}

        1. Преобразование строкового значения в его числовое представление.

Формат записи: VAL(ST,X,C)

Процедура преобразует строку символов st в представление вещественной или целой переменной x, с – содержит 0, если преобразование прошло успешно, тогда в x помещается результат преобразования, иначе с содержит номер позиции, где обнаружен ошибочный символ – х не меняется.

Например: s:=’123’, val(s,x,c) {x=123, c=0}