КАТЕГОРИИ: Архитектура-(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) |
Логический тип данных
Целые типы данных Перечисляемый Интервальный Целые Логический Символьный Порядковые типы отличаются тем, что каждый из них имеет конечное число возможных значений. Эти значения можно определенным образом упорядочить, следовательно, с каждым из них можно сопоставить некоторое целое число – порядковый номер значения. Для порядкового типа определены функции ord(x) – номер значения x в списке, pred(x) – значение в списке, предшествующее x succ(x) – значение в списке, следующее за x. К данным такого типа применимы операции отношения <, >, <= (меньше или равно), >= (больше или равно), <> (не равно).
Таблица 1. Целые типы данных, длина их внутреннего представления в байтах и диапазон возможных значений
При использовании процедур и функций с целочисленными параметрами следует руководствоваться «вложенностью» типов, т.е. везде, где может использоваться WORD, допускается использование BYTE (но не наоборот), в Longint «входит» Integer, который, в свою очередь, включает в себя Shortint · Операции над целыми величинами – сложение (+), вычитание (-), умножение (*), деление нацело (div), вычисление остатка от деления (mod). Пример: 17 div 3 = 5; 17 mod 3 = 2; Пример описания переменных целого типа Var AS, Ds: integer; f,d: word;
Некоторые стандартные процедуры и функции, применяемые к целым типам.
Пример: дано m=3; 1) sqr(m) = 9; 2) abs(-m) = 3; 3)dec(m,2), результат m=1; 4) odd(m)=true; 5) chr(77)=’M’.
Пример 1. Рассмотрим пример программы, вычисляющей значение выражения x3 + ½x2 – 13x + 5½ – 11, при заданном x. Program example_1; Uses crt; Var x, y: integer; Begin Clrscr; Writeln(‘Введите x: ’); Readln(x); y:= sqr(x)*x + abs(sqr(x) – 13*x + 5)– 11; Writeln(‘значение данного выражения равно ’,y); Readkey; End.
· Описание – идентификатор boolean; · Значения – false(ложь) и true(истина); · Размер выделяемой памяти – 1 байт. Пример описания переменных логического типа Var A,d: boolean; Справедливы правила: Ord(false)=0; Ord(true)=1; False<true Succ(false)=true pred(true)=false; Свои значения переменные логического типа получают обычно в результате выполнения операций сравнения (отношения): «<»(меньше), «>»(больше), «<=»(меньше или равно), «>=»(больше или равно), «<>»(не равно), «=»(равно). Результат отношения равен true, если отношение удовлетворяется для значений входящих в него операндов, а false в противном случае.
Помимо операций отношения в языке Турбо Паскаль существуют четыре логические операции, применяемые только к переменным логического типа:
Логические операции, операции отношения и арифметические операции часто встречаются в одном выражении. Приоритет вычислений определяется расставленными скобками, а при их отсутствии принят следующий приоритет (в порядке убывания приоритета): · NOT · AND, *, /, DIV, MOD · OR, XOR, +, - · Операции сравнения, in Например, в логическом выражении A OR B AND NOT(А<B) сначала выполняется заключенная в скобки операция <, а затем операции NOT, AND, OR.
В языке Паскаль нет возможности ввода логических данных с помощью оператора read. Однако предусмотрен вывод значений переменных логического типа с помощью оператора write.
Вычислить значение выражения not(a < 15) or not(b > 30) при a = 10, b = 20: 1) (a < 15) = true; 2) not(a < 15) = false; 3) b > 30 = false; 4) not(b > 30) = true; not(a < 15) or not(b > 30) = true;
Пример 2. Напишем программу, вычисляющую значение этого выражения при любых значения переменных a и b.
Program example_2; Uses crt; Var a, b: integer; c: boolean; Begin Clrscr; Writeln(‘Введите a и b’); Readln(a, b); c:= not(a < 15) or not(b > 30); writeln(‘not(a < 15) or not(b > 30) = ’, c); Readkey; End.
Дата добавления: 2014-01-13; Просмотров: 830; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |