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

Лабораторная работа №6

Тема: строки в Паскале.

Цель: получение навыков работы со строками в Паскале.

  1. Теоретический материал.

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

Тип STRING (строка) в Паскале широко используется для обработки текстов. Он во многом похож на одномерный массив символов ARRAY [O . . N] OF CNAR, однако, в отличии от последнего, количество символов в строке – переменной может меняться от О до N, где N – максимальное количество символов в строке. Значение N определяется объявлением типа STRING [N] и может быть любой константой порядкового типа, но не более 255, например:

Const N = 25;

Type Stroka = String [n];

Var S: Stroka;

B: String [50];

C: String [230];

D: String [270];  Ошибка, 270>255

Разрешается не указывать N. В этом случае длина строки принимается максимально возможной, а именно N=255. Т.о. согласно описания

Var A: String;

B: String [255];

переменные А и В могут содержать до 255 символов каждая.

Строка в Паскале трактуется как цепочка символов. К любому символу в строке можно обратиться точно так же, как к элементу одномерного массива ARRAY [O . . N] of Char, например:

Var St : String [20];

Begin …….

If St [5] = ‘A’ then …..

end

Занесение значений в строковую переменную.

Значение в строковую переменную может быть занесено с помощью оператора присваивания : =, например:

St : = ‘How do you do!’

При этом будут соблюдаться следующие правила:

  1. Позиция символа в строке соответствует номеру позиции в строковой переменной,

т.е. St [1] = H (см. последний пример), St [2] = о St [3] = w St [4] =  

St [5] = d , ……, St [14] = !.

  1. Если в правой части количество символов в строке превышает максимально возможный размер значения строковой переменной, расположенный слева от знака присваивания, “лишние” символы отбрасываются. Например, если при описании

Var st : string [10];

в программе встретится оператор

St : = Hoy do you do!

то переменная St получит значение ‘Hoy do you’, а оставшиеся четыре символа будут отброшены.

  1. Если в переменной St уже содержались какие-либо значения, оно полностью уничтожается, а в переменную заносится новое значение. Например, если

St = ‘Hoy do you’, то после оператора

St: = Hello!

переменная St = ‘Hello!’ (а не St = ‘Hello! you do’)

Справа от знака “присвоить” может стоять как строковая константа, так и строковая переменная, при этом максимальное количество символов в строковых переменных может быть разным, т.е. при описании

Var A: string [20];

B: string [10];

C: string [2];

операторы А:=В; С:=В; В:=А; С:=А; В:=С;

не вызовут ошибки, а присваивание выполниться согласно перечисленных выше правил.

Например:

Var A: string [15];

B: string [8];

C: string [5];

Begin A: = ‘computer’;

B: = A; {B =‘computer’}

C: = B; {C =‘compu’}

A: = C; {A =‘compu’}

end

Занести значение в строковую переменную можно и с помощью оператора ввода Readln. При этом соблюдаются все выше перечисленные правила.

Длина строки.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]