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

Символьный тип

Символьная константа - это символ , заключенный в апострофы (чтобы представить апостроф , его повторяют дважды).

‘A’, ‘R’,’+, ‘7’

В описании констант:

Const Sim = ‘A’;

A = ‘A’;

S = ‘+’;

D1 = ‘;’;

Символьная переменная принимает значение одного символа. Она описывается в разделе переменных как CHAR.

Var Bukwa: Char;

B1, B2, R: Char;

В операторе присваивания:

Bukwa : = ‘+’;

R: = Bukwa;

К символьным данным применимы операции сравнения, т.к. все символы упорядочены, каждый символ имеет свой порядковый номер.

Ввод символьных данных имеет особенности: символьные данные вводят сплошной строкой, без пробелов, т.к. пробел - это тоже символ!!!

Var S1, S2, S : Char;

Read (S1 , S2 , S3 )

- - - - - - - - - - - - - - -

ABC —> S1 = ‘A’ , S2 = ‘B’ , S3 = ‘C’

A_B_C_ —> S1 = ‘A’ , S2 = _ , S3 = ‘B’

Формат: X : M

‘_’ : 7 - вывод семи пробелов.

Результатом операции сравнения является логическая константа True или False. ‘A’<’B’

Встроенные функции:

Ord(x) - определяет порядковый номер символа Х, например, ORD(‘R’) = 82.

Chr(x) - определяет символ, стоящий по порядковому номеру Х, например, CHR(68)= ‘D’.

Эти две функции носят название функций преобразования.

Очевидно , что Chr(Ord(S)) = S; Ord(chr(68)) = 68.

Если С1 и С2 - переменные символьного типа, то С1<С2 , если Ord(C1) < Ord(C2)

Pred(x) - дает предыдущий символ но относительно к Х, например,. Pred(‘N’) = ‘M’.

Succ(x) - определяет следующий за Х символ, например,. Succ(‘R’) = ‘S’, Succ(‘9’) = ‘:’

Справедливы равенства:

Ord (false) = 0 Ord (True) = 1

Succ (False) =True Pred (True) = False

Символьные строковые константы

Символьные строки - последовательность любого, в том числе и равного нулю количества символов, заключенных в апострофы. Символы - из набора ASCII.

‘Номер’ , ‘Summa’ , ‘_ _ ‘ , ‘A+B’

‘Д’’АРТАНЬЯН’ - внутри апостроф - двойной

Const C1 = ‘ ‘;

C2 = ‘РЕЗУЛЬТАТ’;

К строкам применимы операции отношения. Результат: True или False, сравнение происходит посимвольно слева направо .

‘ABC’>=’ACB’результат False , т.к. ‘B’<’C’

Переменной нельзя присвоить значение строки!!! Ограничение - максимальный размер строки, воспринимаемый компилятором, - не более 126 символов. Строка, состоящая из одного символа, называется символьной константой. Если между апострофами нет ни одного символа, то такая строка называется пустой (см. далее раздел «Регулярные типы»).

Для включения в строку символов, не имеющих физического изображения, используется их ASCII-код с символом # перед ним, например, A = ‘#31’ - это  - управляющий символ.

Нестандартные простые типы (определяемые пользователем)

Мы установили, что тип данных задает набор значений, которые могут принимать данные. Например,. данные целого типа могут принимать значения целых чисел. от -32768 до 32767, данные логического типа - значения True и False. Задание типа данных устанавливает и ограниченный набор операций, которые могут выполняться над этими данными. Например, над данными вещественного типа можно выполнять операции +, - , * , / , но нельзя производить операции Div и Mod, которые предназначены для данных целого типа.

Типизация данных значительно уменьшает возможность появления ошибок. Если все же ошибки возникают, то компилятор сам их обнаруживает и сообщает нам об этом. Учитывая ценность типизации данных, в языке Паскаль помимо стандартных типов (целого, действительного, логического, символьного) введены и другие типы, нестандартные (определяемые пользователем). Язык Паскаль предоставляет программисту широкие возможности для задания дополнительных типов, характеристики которых программист может определить самостоятельно. Новые типы описываются в разделе типов или определяются непосредственно при описании переменных.

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