Приклади.

1) Визначити значення змінних a,b після виконання операцій

а =1;

b = 5 + а++;

Після виконання а=2, b=6

 

2) Визначити значення змінних a,b після виконання операцій

a=1;

b = 5 + (++а);

Після виконання в=7, а=2

Логичні операції

Операндами логічних операцій є логічні значення. Результатом логічної операції є логічне значення правда чи неправда. В Borland С++ правда має значення 1, а неправда - 0. Перелік операцій приведено в таблиці.

 

Позначення операції Операція
! Логічне „не”
&& Логічне „і”
|| Логічне „або”

Операції відношень

Результатом операції відношення є логічне значення правда чи неправда.

Перелік операцій приведено в таблиці.

 

Позначення операції Операція
== Перевірка на рівність
!= Перевірка на не рівність
> Більше
< Менше
>= Не менше
<= Не більше

 

Операції присвоєння

С++ має кілька операцій присвоювання, які дозволяють скорочувати запис виразів, що присвоюються. Наприклад, оператор с=с+3; може бути скорочений завдяки використанню складеної операції додавання += : с +=3; Такі операції виконуються швидше.

Формат складених операцій присвоєння:

<змінна> <операція>= <вираз>;

Перелік складених операцій присвоєння приведено в таблиці:

 

Позначення операції Операція
+= Присвоєння з додаванням
-= Присвоєння з відніманням
*= Присвоєння з множенням
/= Присвоєння з діленням
%= Присвоєння залишку цілочисельного ділення
<= Присвоєння з зсувом вліво
>= Присвоєння з зсувом вправо
&= Присвоєння з порозрядною операцією „AND”
^= Присвоєння з порозрядною операцією „XOR”
|= Присвоєння з порозрядною операцією „OR”

 

Складені операції присвоєння присвоюють першому операнду результат примінення відповідної простої операції, що вказана перед символом „=”, до першого і другого операндів. Операція присвоєння повертає як результат присвоєне значення. Завдяки цьому вони допускають сцеплення. Наприклад, можна записати:

А = (В = 1) + 2;

Спочатку визначається значення в дужках. Тобто змінній В присвоюється значення 1. Ця операція поверне значення 1, до цього результату додається 2, отримане значення присвоюється змінній А, значить А=3.

 

С++ допускає запис в одному реченні кілька операцій присвоювання

А=В=С=Ø;

 

Спеціальні операції

 

1) Операція умови

2) Операція визначення розміру операнду

3) Операція слідування

Операція умови

Це єдина операція, яка має три операнди.

Формат запису операції:

<умова> ? <вираз_1> : <вираз_2>;

Якщо значення <умова> є правда, то операція повертає в якості результату значення <вираз_1>, інакше - <вираз_2>.

Наприклад,

a=1; b=3;

C=a>b ? a+b : 0;

Якщо a>b, то С буде дорівнювати сумі a+b, в іншому випадку С буде дорівнювати 0(нулю). В нашому прикладі С=0.

 

Операція визначення розміру операнду

Операція sizeof визначає в байтах розмір свого операнду, яким може бути змінна або тип.

Операція має дві форми. Формат запису операції:

Sizeof <вираз>

Sizeof (<ім¢я типу>)

Наприклад, С= sizeof (int); Результат - С=2

double a; С= sizeof а; Результат - С=8

 

Операція слідування

Операція (,), що называється операцією слідування, об¢єднує два довільних вирази, які обчислюються зліва направо. Спочатку обчислюється значення лівого операнду. Тип його результату визначається як void. Потім обчислюється значення правого операнду. Значення і тип результату операції слідування вважається рівним значенню і типу правого операнду. Наприклад,

С= (а=4, в=а+5)+7;

Результат в дужках дорівнює 9, в=9, С=16,

Приоритети операцій

 

! - + ++ -- sizeof
* / %
+ -
< <= > >=
= = !=
&&
||
?:
= *= /= %= += -=
,

Питання для самоперевірки

1) Записати на мові C++ вираз, що є істиною ,якщо всі числа x,y,z - додатні

2) Які значення будуть мати змінні a, b після виконання операції

a= (b=5) +7;

3) Визначити значення змінної a :

a=2;

a+=6;

4) Визначити значення змінних a, b після виконання операцій:

а=3;

b=2*(a++)+7;

5) Визначити значення змінних a, b після виконання операцій:

a=2;

b=5+2*(--a)+3;

6) Визначити значення a

a=15/2;

7) Визначити значення b

b=7 % 3;

8) Визначити значення b

b=25.0/2;

9) Який символ ставиться в кінці кожного оператора і опису?

10) За правилами С++ записати вираз, значення якого є правда, якщо a=b і неправда в протилежному випадку.

11) За правилами С++ записати вираз, значення якого є правда, якщо a#b і a позитивне, і неправда в протилежному випадку.

12) Визначити значення змінної а

a=7;

a++;

13) За правилами С++ записати вираз, значення якого є правда, якщо a лежить в проміжку [-2, 5]і неправда в протилежному випадку.

14) Визначити значення змінних a, b після виконання операцій

a=3;

b=(a>7) ? 10 : 12;

15) Визначити значення змінних a, b після виконання операцій

b=(a=2, a+=2)+3;

16) Визначити значення змінної a після виконання операції

a=sizeof char;

17) Визначити значення змінної a після виконання операції

a=2;

a+=7;

18) Визначити значення змінних a, b після виконання операцій

a=3;

b=2*a++ ;

a*=2;

19) Записати вираз значення якого буде правда якщо значення змінної а лежить в проміжку (5, 15)

20) Записати вираз значення якого буде правда якщо значення змінної а не лежить в проміжку (-8,25)

21) Яке значення буде мати змінна с після виконання операторів

a=1; b=3;

C=a>b ? a+b : 0;

22) Визначити значення змінної а після виконання операторів

a=15;

a%=2;

23) Визначити значення змінної а після виконання операторів

a=5;

a/=2;

24) Записати вираз, що є правда якщо а не дорівнює b і неправда в протилежному випадку.

25) Визначити значення змінних a,b після виконання операторів

a=7;

b=(a+=2, --a)+12;

 








Дата добавления: 2015-08-26; просмотров: 765;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.015 сек.