Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Выражение Результат

Var

Var

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

Логические выражения

Логическим (булевским) выражением называется выражение, в котором используются операнды булевского типа (Boolean), в качестве операций выступают логические операции НЕ (not), И (and), ИЛИ (or), Исключающее ИЛИ (xor), а результатом выполнения выражения является логическое значение True или False (табл. 1.7).

Таблица 1.7. Логические операции

Операция Название Пример Значение А Значение В Результат
not Логическое отрицание not A True False   False True
and Логическое И A and В True True False False True False True False True False False False
or Логическое ИЛИ A or В True True False False True False True False True True True False
xor Исключающее ИЛИ A xor В True True False False True False True False False True True False

Простейшими видами логических выражений являются: логическая константа, логическая переменная; элемент массива логического типа, логическая функция, выражение отношения. Другие логические выражения строятся из вышеперечисленных путем применения логических операций и круглых скобок. Например,

not ((A<5) or (B>=8) and (C xor D)) (X<=50) and (X>=1) xor (not (Z<>0))

Использование операции and вызывает много ошибок. Например, часто записывают в выражение, аналогичное следующему: A<10 and В<100, которое неявно предполагает наличие круглых скобок (A<(10 and В)<100), что служит причиной ошибки. Вместо такого выражения надо записать следующее: (A<10) and (В<100).

Следует помнить, что приоритет булевских операций выше приоритета операций отношения.

Символьное выражение порождает значение, имеющее символьный тип данных (Char).

Формы символьных выражений: символьная константа, символьная переменная, элемент массива символьного типа, функция, предназначенная для работы с данными символьного типа.

Значением переменной символьного типа может быть любой отображаемый символ:

· буква русского или латинского алфавитов;

· цифра;

· знак препинания;

· специальный символ, например, «новая строка».

Переменная символьного типа должна быть объявлена в разделе объявления переменных var. Инструкция объявления символьной переменной в общем виде выглядит так:

Имя: char;

где Имя — имя переменной символьного типа. Например,

otv: char;

ch: char;

Переменную типа char можно сравнить с другой переменной типа char или с символьной константой. Сравнение основано на том, что каждому символу поставлено в соответствие число (код), причем выполняются следующие соотношения:

'0'<'1'<.. <'9'<.. <'A'<'B'<.. <'Z'<'a'<'b'<.. <'z'

Символам русского (украинского) алфавита соответствуют числа большие, чем символам латинского алфавита, при этом справедливо следующее:

'А'<'Б'<'В'<.. <'Ю'<'Я'<'а'<'б'<'в'<.. <'э'<'ю'<'я'

В тексте программы вместо символа можно указать его код, поставив перед числом оператор #. Например, вместо константы 'в' можно записать #193. Такой способ записи, как правило, используют для записи служебных символов или символов, которые во время набора программы нельзя ввести с клавиатуры. К примеру, часто используемый при записи сообщений символ «новая строка» записывается так: #13.

В программах обработки символьной информации часто используют функции Chr и Ord. Значением функции Chr является символ, код которого указан в качестве параметра. Например, в результате выполнения инструкции c:=chr(32) переменной с будет присвоено значение пробел. Функция Ord позволяет определить код символа, который передается ей в качестве параметра. Например, в результате выполнения инструкции k:=ord('*') переменная k будет содержать число 42 — код символа *.

Операции, которые приводят к символьным выражениям, в языке отсутствуют.

Строковыми выражениями являются выражения, в которых операндами служат строковые данные. Они состоят из строковых констант, переменных, указателей функций и знаков операций.

Строковые переменные могут быть представлены следующими типами: Shortstring, Longstring и Widestring. Различаются эти типы предельно допустимой длиной строки, способом выделения памяти для переменных и методом кодировки символов.

Переменной типа Shortstring память выделяется статически, т.е. до начала выполнения программы, и количество символов такой строки не может превышать 255. Переменным типа Longstring и Widestring память выделяется динамически — во время работы программы, поэтому длина таких строк практически не ограничена.

Помимо перечисленных выше типов можно применять универсальный cтроковый тип String. Тип String эквивалентен типу Shortstring.

Переменная строкового типа должна быть объявлена в разделе объявления переменных var. Инструкция объявления в общем виде выглядит так:

Имя: String; или Имя: String [ длина ]

где Имя — имя переменной; длина — константа целого типа, задающая максимально допустимую длину строки. Например,

name: string [30];

buff: string;

Если в объявлении строковой переменной длина строки не указана, то ее длина задается равной 255 символам.

Над строковыми данными допустимы операция сцепления (конкатенации) и операции отношения.

Операция сцепления (конкатенации), обозначаемая символом «+», применяется для соединения двух строк, в результате чего образуется строка, состоящая из символов обоих операндов, в которой символы второго операнда пристыковываются в конец символов первого операнда. Например,

'Object'+' Pascal' 'Object Pascal'

'ABC'+'D' 'ABCD'

'Dom '+'Nomer '+'5/12' 'Dom Nomer 5/12'

Операции отношения (=, <>, >, <, >=, <=) проводят сравнение двух строковых операндов и имеют приоритет более низкий, чем операции сцепления. Сравнение строк производится слева направо до первого несовпадающего символа, и та строка считается больше, в которой первый несовпадающий символ имеет больший номер в таблице символов ASCII. Результат выполнения операций отношения над строковыми операндами всегда имеет булевский тип и принимает значения True или False.

Если сравниваемые строки имеют разную длину, но в общей части символы совпадают, считается, что более короткая строка меньше, чем более длинная. Строки считаются равными, если они полностью совпадают по длине и содержат одни и те же символы. Например,

<== предыдущая лекция | следующая лекция ==>
Выражение Результат. Десятичное значение Двоичное представление | Операторы языка Object Pascal
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 435; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.014 сек.