3.2 ОПЕРАЦІЇ МОВИ С++

 

Позначки операцій – це один або декілька символів, що визначають дію над операндами. Операції поділяють на унарні, бінарні та тернарні за кількістю операндів, які беруть участь в операції (таблиця 3.2).

Таблиця 3.2.

Операція Короткий опис

Унарні операції

& Операція одержання адреси операнда
* Звернення за адресою (розіменування)
- Унарний мінус – змінює знак арифметичного операнда
~ Порозрядове інвертування внутрішнього двійкового коду (побітове заперечення)
! Логічне заперечення (НЕ) значення операнда. Цілочисельний результат 0 (якщо операнд ненульовий, тобто істинний) або 1 (якщо операнд нульовий, тобто хибний). Таким чином: !1 дорівнює 0; !2 дорівнює 0; !(-5)=0; !0 дорівнює 1.
++

Інкремент (збільшення на одиницю):

Префіксна операція (++х) збільшує операнд на 1 до його використання.

Постфіксна операція (х++) збільшує операнд на 1 після його використання.

int m=1, n=2;

int a=(m++)+n; // a=3, m=2, n=2

int b=m+(++n);// b=6, m=2, n=3

- -

Декремент (зменшення на одиницю):

Префіксна операція (--х) зменшує операнд на 1 до його використання.

Постфіксна операція (х--) зменшує операнд на 1 після його використання.

sizeof

Обчислення розміру (в байтах) об¢єкта того типу, який має операнд. Має дві форми:

1) sizeof (вираз);

sizeof(1.0); // Результат - 8,

Дійсні константи за замовчуванням мають тип double;

2) sizeof (тип)

sizeof (char); // Результат – 1.

Бінарні операції

Арифметичні операції
+ Бінарний плюс (додавання арифметичних операндів)
- Бінарний мінус (віднімання арифметичних операндів)
Мультиплікативні
* Добуток операндів арифметичного типу
/ Ділення операндів арифметичного типу (якщо операнди цілочисельні, абсолютне значення результату заокруглюється до цілого, тобто 20/3 дорівнює 6)
% Одержання залишку від ділення целочисельних операндів (13%4 = 1)
Операції зсуву (визначені лише для цілочисельних операндів)
<<  Зсув вліво бітового представлення значення лівого цілочисельного операнда на кількість розрядів, рівну значенню правого операнда (4<<2 дорівнює 16, т.я. код 4 100, а звільнені розряду обнуляються, 10000 – код 16)
>>  Зсув вправо бітового представлення значення правого цілочисельного операнда на кількість розрядів, рівну значенню правого операнда
Порозрядні операції
& Порозрядна кон’юнкція (І) бітових представлень значень цілочисельних операндів
| Порозрядна диз’юнкція (АБО) бітових представлень значень цілочисельних операндів
^ Порозрядне виключне АБО бітових представлень значень цілочисельних операндів
Операції порівняння
Менше, ніж
Більше, ніж
<= Менше або рівне
>= Більше або рівне
= = Рівне
!= Не рівне
Логічні бінарні операції
&& Кон’юнкція (І) цілочисельних операндів або відношень, цілочисельний результат (0) або (1)
|| Диз’юнкція (АБО) цілочисельних операндів або відношень, цілочисельний результат (0) або (1) (умова 0<x<1 мовою С++ записується як 0<x && x<1)
Тернарна операція
Умовна операція
? :

Вираз1 ? Вираз2 : Вираз3;

Першим вираховується значення Виразу1. Якщо воно істинне, тоді обчислюється значення Виразу2, яке стає результатом. Якщо при обчисленні Виразу1 одержуємо 0, тоді в якості результату береться значення Виразу3.

Наприклад:

х<0 ? -x : x ; //обчислюється абсолютна величина x.


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

Ранг Операції Напрямок виконання
1 () (виклик функції), [], ->, "." >>> 
2 !, ~, +, - (унарні), ++, --, *, (тип), sizeof, (new,delete – Сі++) <<< 
3 .* , ->* - Сі++ >>> 
4 *, /, % (бінарні) >>> 
5 +, - (бінарні) >>> 
6 <<, >> >>> 
7 <, <=, =>, > >>> 
8 ==, != >>> 
9 & (порозрядна) >>> 
10 ^ >>> 
11 | (порозрядна) >>> 
12 && (логічна) >>> 
13 || (логічна) >>> 
14 ?: (тернарна) <<< 
15 =, +=, -=, *=, /=, %=, &=, ^=, |=, <<=,>>= <<< 
16 "," (кома) >>> 

Основні матичні функції мови С/С++, опис яких міститься у файлі <math.h>, наведені у таблиці 3.4.

Таблиця 3.4

Матичний запис Функція Пояснення Приклад
arccos x acos Повертає арккосинус кута, рівного х радіан acos(x);
arcsin x asin Повертає арксинус аргументу х в радіанах asin(x);
arctg x atan Повертає арктангенс аргументу х в радіанах atan(x);
аrctg(x/у) atan2 Повертає арктангенс відношення параметрів х та у в радіанах atan2(x, y);
- ceil Заокруглює дійсне значення х до найближчого більшого цілого і повертає його як дійсне ceil(x);
cosx cos Повертає косинус кута, рівного х радіан cos(x);

chx=1/2(ex+e-x)

cosh Повертає гіперболічний косинус аргументу, рівного х радіан cosh(x);

ex

exp Повертає результат піднесення числа е до степені х exp(x);
|x| fabs Повертає модуль дійсного числа х fabs(x);
- floor Заокруглює дійсне число до найближчого меншого числа і повертає результат як дійсний floor(x);
- fmod Повертає залишок ділення х на у. Аналогічна операції %, але працює з дійсними числами fmod(x, y);
ln x log Повертає значення натурального логарифму х log(x);
lg x log10 Повертає значення десяткового логарифму х log10(x);

xy

pow Вираховує значення числа х у степені у pow(x, y);
sinx sin Повертає синус кута, рівного х радіан sin(x);

sh x=1/2 (ex-e-x)

sinh Повертає гіперболічний синус кута, рівного х радіан sinh(x);

sqrt Визначає корінь квадратний числа х sqrt(x);
tg x tan Повертає тангенс кута, рівного х радіан tan(x);
tgh x tanh Повертає гіперболічний тангенс кута, рівного х радіан tanh(x);

Таблиця 3.5 Операції присвоювання

Операція Пояснення Приклад
= Присвоїти значення виразу-операнду з правої частини операнду лівої частини Р=10.5-3*х
*= Присвоїти операнду лівої частини добуток значень обох операндів Р*=2 еквівалентно Р=Р*2
/= Присвоїти операнду лівої частини результат від ділення значення лівого операнда на значення правого

Р/=(2.2-х) еквівалентно

Р=Р/(2.2-х)

%= Присвоїти лівому операнду залишок від ділення цілочисельного значення лівого операнда на цілочисельне значення правого операнда Р%=3 еквівалентно Р=Р%3
+= Присвоїти операнду лівої частини суму значень обох операндів А+=В еквівалентно А=А+В
-= Присвоїти операнду лівої частини різницю значень лівого і правого операндів Х-=3.4-у еквівалентно Х=Х-(3.4-у)


Информация о работе «Мова програмування С++»
Раздел: Информатика, программирование
Количество знаков с пробелами: 62340
Количество таблиц: 10
Количество изображений: 0

Похожие работы

Скачать
206879
0
16

... . Механізм переривань забезпечує ефективна взаємодія пристроїв уведення-висновку з мікропроцесором. Переривання цікавлять нас тому, що обробка переривань - це прерогатива програмування на мові асемблера. У високорівневих мовах відсутні засоби роботи з перериваннями на машинному рівні. Переривання звичайно викликаються зовнішніми пристроями. Переривання сигналізує мікропроцесору, щоб він призупинив ...

Скачать
16544
1
0

... функцій. Щоб полегшити їх роботу, фахівці Microsoft розробили бібліотеку MicrosoftFoundationClasses— MFC . Використовуючи готові класи C++, можна набагато швидше і простіше вирішувати багато задач. Бібліотека MFC істотно полегшує програмування в середовищі Windows. Ті, хто володіє достатнім досвідом програмування на C++, можуть допрацьовувати класи або створювати нові, похідні від існуючих. Класи ...

Скачать
21927
1
4

... , що використовується, прагнути включати в рядок до 10 слів; • прагнути не поміщати більш одного-двох параграфів тексту на один екран. 1.4 Розробка цифрового освітнього ресурсу: «Задачник по мові програмування. Циклічні алгоритми» Назва розробки: електронний навчальний посібник з язика програмування. (Додаток 1) Тип розробки: електронний навчальний посібник. Предмет: інформатика; тема: « ...

Скачать
67862
1
1

... мене основним принципам побудови алгоритмів, програм, вибору структур даних. Ця дисципліна вчить мене думати, надає мені практичних знань та досвіду, щоб розробляти модель програми ще до стадії набору програми на заданій мові програмування. Ця дисципліна вчить мене тим основним речам, без яких жоден представник вибраної мною професії не може обійтись у своїй праці, тим основам, які повинні буди зі ...

0 комментариев


Наверх