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

Тема 4. Обработка данных строкового типа Краткое изложение теоретического материала

Символьный тип Char. Значением является один символ. Все символы упорядочены. Порядковый номер символа – его код. К данным символьного типа применимы операции отношения (сравниваются коды символов). Отображаемыми (на экране) являются символы с кодами от 32 до 255. Символы с кодами от 0 до 31 – управляющие. Русские и латинские буквы упорядочены по алфавиту.

Функции преобразования:

  • Chr(X) – возвращает символ с кодом Х;

  • Ord(C) – возвращает код (порядковый номер) символа С.

Прочие стандартные функции:

  • Pred(C) – возвращает символ, предшествующий символу С;

  • Succ(C) – возвращает символ, следующий за символом С.

Строковый тип String. Строка – произвольная последовательность символов. Длина строки – количество символов в ней. Пустая строка не содержит ни одного символа. Ее длина равна нулю.

Стандартный паскаль допускает использование строк длиной до 255 символов - это тип String.

В Delphi для работы со строками есть типы:

- ShotString, аналогичный типу String в стандартном паскале;

- String для обработки строк сколь угодно большой длины, ограниченной лишь размерами памяти (такие строки размещаются в динамической памяти).

Строковая константа заключается в апострофы: Мама мыла раму’.

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

Var <имя переменной> : String [N];

где N – максимальная длина строки. Если она не указана, максимальной длиной строки считается число 255 для коротких строк (или любая длина для длинных строк).

Например:

Var Family : String [20];

Name : String [10];

P : String;

Номер символа в строке называется еще индексом. Для обращения к отдельному символу строки его индекс указывается после имени строки в квадратных скобках. Например, P[3] – 3-й символ строки P; Name[K] – K-й символ строки Name.

К данным строкового типа применима операция конкатенации (обозначается символом «+»). Например, после выполнения последовательности команд:

A:= ’тепло’;

B:= ’ход’;

C:= A+B;

в переменной С будет записана строка ‘теплоход’.

К данным строкового типа применимы операции отношения, причем строки сравниваются посимвольно, с учетом порядковых номеров символов в алфавите. Например, ‘мама’ < ’папа’, ‘машина’>’мама’.

Стандартные функции:

  • Length (S) – возвращает длину строки S.

  • Pos (P, S) – возвращает позицию первого вхождения строки P в строку S. Например, после выполнения последовательности команд:

A := ’крокодил’;

B := ’код’;

K := Pos (B, A);

N := Pos (‘о’, A);

M := Pos (‘a’, A);

переменные К, N, M примут следующие значения: K=4, N=3, M=0.

  • Copy(S, K, N) – выделяет (копирует) часть строки S длиной N начиная с К-го символа. Например, после выполнения последовательности команд:

A := ’крокодил’;

B := Copy (A, 2, 3);

значением переменной В будет слово ‘рок’.

Стандартные процедуры:

  • Delete (S, K, N) – удаляет из строки S N символов, начиная с K-го. Например, после выполнения последовательности команд:

A := ’корзина’;

Delete (A, 4, 3);

значением переменной A будет слово ‘кора’.

  • Insert (P, S, K) – вставляет строку P в строку S начиная с позиции с номером K. Например, после выполнения последовательности команд:

A := ’кот’;

Insert (‘р’, A, 2);

значением переменной A будет слово ‘крот’.

  • Val (S, N, K) – преобразует строку S в число N; K – номер позиции в строке S, где встретился символ, недопустимый в записи числа.

  • Str (N, S) – преобразует число N в строку S.