Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
METODIChKA_PASCAL.doc
Скачиваний:
1
Добавлен:
09.11.2019
Размер:
412.67 Кб
Скачать

6. Строки.

6.1.Описание переменных строкового типа.

Строкой называется последовательность символов определенной длины. Максимальная длина строки равна 256 символов.

Пример описания строковой переменной:

VAR Ss:string[40]; S1:string;

В программе строка S может иметь максимальную длину 40 символов, S1 может иметь максимальную длину 256 символов. К каждому элементу строки можно обратиться по его номеру, например, S[5],S1[25].

Вводятся и выводятся элементы строки целиком, в отличие от массивов.

Со строками возможно выполнение операций, указанных в таблице 6. При выполнении операции сравнения сравнение идёт слева направо, сравниваются коды символов до тех пор, пока не нарушено равенство.

Таблица 6. Операции со строками.

Название операции

Знак операции

Результат операции

Примеры

Объединение

+

строка, состоящая из последовательного присоединения исходных строк

S=’m’ s1=’in’

s+s1=’min’

Сравнение

>,<,=,<>

>=, <=

истина или ложь

‘Bal’<’bal’

‘mail’>’mai’

Таблица 6.2. Стандартные процедуры и функции для строк.

Название

Тип результата

Пояснение

Length(s)

integer

функция возвращает длину строки s

Concat(s1,s2)

string

функция возвращает строку сцепления строк параметров

Copy(s, n, c)

string

функция возвращает подстроку строки s, начиная с позиции n и состоящую из с символов

Delete(s, n, c)

string

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

Insert(s1,s, n)

string

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

Pos(s1, s)

integer

функция возвращает позицию первого вхождения подстроки s1 в подстроку s или 0, если строка s не содержит подстроки s1

6.2 Примеры.

Допустим s1=’в парке растут деревья’; s2=’и цветы’, тогда после выполнения операторов

Length(s1) получим результат 22,

Concat(s1,s2) - ’в парке растут деревья и цветы’,

Copy(s1, 9, 6) - ’растут’, Delete(s1, 8, 7) -- ’в парке деревья’, Insert(‘сквере и ’,s1, 3 ) - ’в сквере и парке растут деревья ’, Pos(‘р’, s1) - 5.

6.3 Упражнения.

  1. Заменить в данной строке все вхождения одного символа на другой.

  2. Найти в данной строке данную букву.

  3. Дано предложение из нескольких слов, разделённых пробелом. Вывести количество слов в данной строке.

  4. Дано предложение, состоящее из слов различной длины. Определить слово максимальной длины.

  5. Дана строка, в которой есть несколько одинаковых символов sk. Сколько раз встречается этот символ в строке.

  6. Дана строка, в которой есть несколько одинаковых символов st. Удалит эти символы из строки.

  7. Из строки, в которой есть две запятые, удалить символы, расположенные между этими запятыми.

  8. Определить, есть ли в строке два рядом стоящих одинаковых символа.

  9. Дано предложение, состоящее из шести слов, разделённых пробелом. Напечатать второе, четвёртое и шестое слово.

  10. В данной строке заменит символы st на символы mk.