Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 4-5.doc
Скачиваний:
3
Добавлен:
18.08.2019
Размер:
377.34 Кб
Скачать

Сложение и вычитание

Операция сложения (+) возвращает сумму двух операндов. Стандартная опе­рация сложения определена для типов int, uint, long, ulong, float, double и decimal. К величинам других типов ее можно применять, если для них существует неяв­ное преобразование к этим типам (см. рис. 3.1). Тип результата операции равен «наибольшему» из типов операндов, но не менее int.

Если оба операнда целочисленные или типа decimal и результат операции слиш­ком велик для представления с помощью заданного типа, генерируется исключе­ние System. OverflowException (В проверяемом контексте. В непроверяемом исключение не выбрасывается, зато отбра­сываются избыточные биты).

Все возможные значения для вещественных операндов приведены в табл. 3.5 Символами х и у обозначены конечные положительные значения, символом z -результат операции вещественного сложения. Если результат слишком велик для представления с помощью заданного типа, он принимается равным значению «бесконечность», если слишком мал, он принимается за 0.

Таблица 3.5. Результаты вещественного сложения

+

y

+0

-0

+

-

NaN

x

z

x

x

+∞

-∞

NaN

+0

y

+0

+0

+∞

-∞

NaN

-0

y

+0

-0

+∞

-∞

NaN

+

+∞

+∞

+∞

+∞

NaN

NaN

-

-∞

-∞

+-∞

NaN

-∞

NaN

NaN

NaN

NaN

NaN

NaN

NaN

NaN

Операция вычитания (-) возвращает разность двух операндов. Стандартная операция вычитания определена для типов int, uint, long, ulong, float, double и decimal К величинам других типов ее можно применять, если для них существует неяв­ное преобразование к этим типам (см. рис. 3.1). Тип результата операции равен «наибольшему» из типов операндов, но не менее int.

Если оба операнда целочисленные или типа decimal и результат операции слиш­ком велик для представления с помощью заданного типа, генерируется исключе­ние System.OverflowException.

Все возможные значения результата вычитания для вещественных операндов приведены в табл. 3.6. Символами х и у обозначены конечные положительные значения, символом z — результат операции вещественного вычитания. Если x и у равны, результат равен положительному нулю. Если результат слишком велик для представления с помощью заданного типа, он принимается равным значе­нию «бесконечность» с тем же знаком, что и х-у, если слишком мал, он прини­мается за 0 с тем же знаком, что и х - у.

Таблица 3.6. Результаты вещественного вычитания

-

y

+0

-0

+∞

-∞

NaN

x

z

x

x

-

+

NaN

+0

-y

+0

+0

-

+

NaN

-0

-0

+0

-

+

NaN

+∞

+

+

+

NaN

+

NaN

-∞

-

-

-

-

NaN

NaN

NaN

NaN

NaN

NaN

NaN

NaN

NaN

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]