Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Логические операции. Операции отношения Операции Описание = = Равно > Больше < Меньше >= Больше или равно

Последовательность

Операции отношения

Операции Описание
= = Равно
> Больше
< Меньше
>= Больше или равно
<= Меньше или равно
!= Не равно

Замечание 1.

Знак = никогда не используется как знак сравнения! Это знак присвоить значение.

Замечание 2.

В C++ нет логического типа. Поэтому, если выражение принимает ненулевое значение, то оно считается истинным, а если не нулевое - ложным.

Операции инкремента (++) и декремента (--)

В языке C++ предусмотрены две уникальные операции, которые увеличивают или уменьшают значение переменной на 1.

 

Оператор Пример Описание Эквивалентное выражение
+ + i + +; Постфиксная i =i+1; или i+=1;
+ + + + i; Префиксная i =i+1; или i+=1;
- - i - -; Постфиксная i =i-1; или i-=1;
- - - - i; Префиксная i =i-1; или i-=1;

 

Префиксный и постфиксные операции различаются приоритетом. Префиксные операции имеют самый большой приоритет и выполняются до любой другой операции. Постфиксные операции имею самый маленький приоритет и выполняются после всех остальных операции.

Пример.

float a, b=2, c=1, d=1;

a = b + c++;

cout << " a=" << a <<" c= "<< c;

/* Даст результат a=3 c=2.

Используется постфиксный инкремент. Сначала произойдет сложение b и c, результат запишется в а, затем с будет увеличена на 1 */

a = ++d + b;

cout << " a=" << a <<" d= "<< d;

/* Даст результат a=4 d=2.

Используется префиксный инкремент. Сначала d будет увеличена на 1 (и станет равной 2), затем произойдет сложение d и b, результат запишется в а */

Операция "запятая"

Дополнительная операция (,) не работает непосредственно с данными, а приводит к вычислению выражения слева направо. Эта операция позволяет Вам использовать в одной строке несколько выражений, разделенных запятой.

Пример 1.

main()

{

int i = 10,

j = 25;

}

Пример 2.

i = 10;

j=(i=12,i+8);

Результат выполнения: j=20. Сначала i получает значение 10, затем использование операции "запятая" приведет к тому, что i получит значение 12, а затем значение i+8, т.е. 12+8=20. Результат будет присвоен j.

Условный оператор?:

(Условие)? (выражение1):(выражение2)

Если условие истинно, то выполняется выражение1, а если ложно, то выражение2.

Пример.

(а>b)? (ans =10):(ans=25);

или

ans=(a>b)?(10):(25);

Если а>b, то переменная ans получается значение 10, иначе - значение 0.25

Выполнить выражение до запятой, затем выражение после запятой.

Пример:

x = a+b, x+12;

Среди логических операций следует выделить операции ‘и’ (‘and’), ‘или’ (‘or‘), отрицание ‘не’ (‘not’) и сложение по модулю 2 (‘xor’). В языке Си логические операции обозначаются следующим образом:

операция Обозначение в Си
x and y x && y
x or y x || y
not x ! x
x xor y x ^ y

Таблицы истинности логических операций приведены в следующих таблицах:

 

 

x y x and y   x y x or y   x not x   x y x xor y
                           
                           
                           
                           

Логические операции подчиняются правилу Де-Моргана:

not (x and y) = (not x) or (not y)

или то же самое

!(x && y) =! x ||! y

<== предыдущая лекция | следующая лекция ==>
Преобразование типов | Операторы. Побитовые (битовые) логические операции
Поделиться с друзьями:


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


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



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




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