- •Алгоритмічні мови та програмування Методичні вказівки
- •Алгоритмічні мови та програмування Методичні вказівки
- •03056, Київ, вул..Політехнічна, 12, корп. 17
- •Практичне заняття № 1 Системи числення та формати зображення чисел у еом Завдання
- •Практичне заняття № 2
- •Завдання
- •Додаток 1 Пріоритети та асоціативність операцій
- •Примітка
- •Опис операцій
- •4.Операції зсувів
- •8.Умовний вираз
- •9. Операції та вирази присвоювання
- •10.Складене присвоювання
- •11. Операція „кома” або операція послідовного обчислення
- •Додаток 2
- •Практичне заняття № 3 Вивчення умовних переходів Завдання
- •Список завдань
- •Практичне заняття № 4 Вивчення циклічних обчислювальних процесів Завдання
- •Практичне заняття № 5 Розробка алгоритмів та їх графічне зображення Завдання
- •Практичне заняття № 6 Розрахунок значень числових рядів Завдання
- •Приклад виконання завдання
- •Практичне заняття № 8 Робота з функціями Завдання
- •Приклад виконання завдання
- •Опис алгоритму і програми
- •Практичне заняття № 9 Робота з цілими числами Завдання
- •Додаток
4.Операції зсувів
<<
вираз операнд1 << операнд2 ( зсув ліворуч операнда1 , додатний операнд2 визначає кількість зсувів , операнди цілочислові , зсув логічний , звільнені біти заповнюються нулями ) ;
>>
операнд1 >> операнд2 ( зсув праворуч операнда1 , додатний операнд2 визначає кількість зсувів , операнди цілочислові ; зсув логічний для
беззнакового операнд1, звільнені біти заповнюються нулями ; зсув
арифметичний для знакового операнд1, звільнені біти заповнюються знаком – розширення знака) .
Приклади:
a) int v = 0x1234 , r ;
r = v << 8; // r = 0x3400
v 0001 0010 0011 0100
r 0011 0100 0000 0000
v = r > > 8; // v = 0x0034
b) зсув ліворуч використовується для множення беззнакових чисел на 2к ,де к – кількість зсувів . Зсув праворуч використовується для цілочислового ділення на 2к , беззнакові числа округлюються у напрямку до нуля , а знакові округлюються у напрямку до від’ємної нескінченості .
Приклади:
0x0005 << 1 à 0x000A 0x0005 >> 1 à 0x0002
-5 / 2 à -2 -2/2 à -1 -1/2 à 0
0xFFFB >> 1 à 0xFFFD ( - 3 у доповняльному коді )
0xFFFD >> 1 à 0xFFFE ( -2 у доповняльному коді )
0xFFFE >> 1 à 0xFFFF ( -1 у доповняльному коді )
0xFFFF >> 1 à 0xFFFF ( -1 у доповняльному коді )
5.Операції відношення
< менше
<= менше або дорівнює
> більше
>= більше або дорівнює
== дорівнює
!= не дорівнює
вираз операнд1 операція_відношення операнд2 (значення виразу true (істинно) ,якщо відношення справедливо ,або false (хибне) ,якщо ні ; у виразах цілого типу true перетворюється у 1 , а false у 0 .
Приклади:
N <5 // N = 3 à true N = 5 à false N = 10 à false
ch != ‘A’ // ch = ‘B’ à true ch = ‘A’ à false
i == 7 //i = 5 à false i = 7 à true i = 9 à false
6.Побітові логічні операції
& операція “I” , AND
| операція “АБО” ,OR
^ операція “ВИКЛЮЧНЕ АБО” , XOR
вираз операнд1 операція операнд2 (операнди – коди ,краще коди цілих чисел )
0 & 0 = 0 0 | 0 = 0 0 ^ 0 = 0
0 & 1 = 0 0 | 1 = 1 0 ^ 1 = 1
1 & 0 = 0 1 | 0 = 1 1 ^ 0 = 1
1 & 1 = 1 1 | 1 = 1 1 ^ 1 = 0
Приклади:
unsigned int r , k = 0x12FF , j = 0x00FF ;
r = k & j ; // r = 0x00FF
r = k | j ; // r = 0x12FF
r = k ^ j ; // r = 0x1200
7. Логічні вирази та операції
&& логічна операція “I” , AND
| | логічна операція “АБО” ,OR
логічний вираз операнд1 логічна_операція операнд2 (операнди –логічні константи , вирази відношення ,логічні змінні або логічні вирази ; результат true (1) або false (0) : для операції “I” результат true , коли обидва операнди мають значення true ,у інших випадках результат false ; для операції “АБО” результат false , коли обидва операнди мають значення false ,у інших випадках результат true ).
Приклади:
5 > 2 && 4 < 7 // результат true
5 > 2 && 4 > 7 // результат false
5 < 2 && 7 > 4 // результат false
5 > 2 || 4 < 7 // результат true
5 > 2 || 4 > 7 // результат true
5 < 2 || 7 > 4 // результат true
5 < 2 || 7 < 4 //результат false
5 > 2 && 4 < 7 && 8 < 6 // результат false
5 > 2 || 4 < 7 || 8 < 6 // результат true
5 > 2 || 4 < 7 && 8 < 6 // результат false