►Бинарная арифметика...50

We use cookies. Read the Privacy and Cookie Policy

Бинарными называются операторы, которые имеют два аргумента. В выражениях типа var1 op var2 оператор op бинарный. Самыми распространёнными бинарными операторами являются простые математические операции, изучаемые ещё за школьными партами. Бинарные операции, которые поддерживает С++, приведены в табл. 3.1.

    Таблица 3.1. Математические операции в порядке приоритета

    _________________

    Приоритет — Оператор — Значение

    ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

    1 — + ( унарный ) — Реально ничего не изменяет

    1 — - ( унарный ) — Возвращает противоположное по знаку, равное по модулю значение

    2 — ++ ( унарный ) — Оператор инкремента, увеличивает значение аргумента на 1

_________________

50 стр. Часть 1. Первое знакомство с С++

    2 — -- ( унарный ) — Оператор декремента, уменьшает значение аргумента на 1

    3 — * ( бинарный ) — Умножение

    3 — / ( бинарный ) — Деление

    3 — % ( бинарный ) — Остаток ( деление по модулю )

    4 — + ( бинарный ) — Сложение

    4 — - ( бинарный ) — Вычитание

    5 — =, *=, %=, +=, -= ( специальные ) — Операторы присвоения

    ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

Как видите, операторы умножения, деления, деления по модулю, сложения и вычитания имеют вид обычных математических операций. Да они и работают так же, как соответствующие им арифметические операции:

        float var = 133 / 12 ;

Значение большинства операторов вам хорошо известно ещё из начальной школы, кроме разве что операции деления по модулю.

По своей сути этот оператор означает получение остатка от деления. Например, 4 входит в 15 три раза, и остаток при этом составляет 3. Выражаясь терминами С++, 15, делённое по модулю 4, равно 3.

        int var = 15 % 4 ; /*переменной var присваивается значение 3 */ 

Программисты всегда пытаются удивить непрограммистов, а потому в С++ деление по модулю определяется так:

        IntValue % IntDivisor

что эквивалентно

        IntValue - ( IntValue / IntDivisor ) * IntDivisor

Вот пример:

                      15 % 4 равно     15 - ( 15/4 ) * 4

                                                 15 - 3 * 4

                                                 15 - 12

                                                 3 

   

        «Для действительных переменных оператор деления по модулю не определён, поскольку он целиком основан на использовании округления ( округления рассматривались в главе 2, "Премудрости объявления переменных" ).»

[Атас!]