Читайте также:
|
|
МАТЕМАТИЧЕСКИЕ И ЛОГИЧЕСКИЕ ВЫРАЖЕНИЯ
Цель работы: ознакомление с математическими и логическими операциями, с числовыми функциями Borland C++, приобретение навыков работы с ними.
Теоретическая часть
Математические операции
Программы обрабатывают данные и в ходе этого процесса выполняют всевозможные вычисления. Совокупность этих вычислений в Borland C++ называется выражением. В выражения входят операции. Операция - это простой математический символ, который указывает, какой вид математической операции должен использоваться при написании формулы.
В таблице представлены самые простые математические операции:
Таблица 1
Операция | Применение | Описание |
* | dan1*dan2 | Умножение |
/ | dan1/dan2 | Деление |
+ | dan1+dan2 | Сложение |
- | dan1-dan2 | Вычитание |
% | dan1%dan2 | Остаток от целочисленного деления |
В C++ нет отдельных операций для целочисленного деления. Если с обеих сторон от знака “/” стоят целые числа, то этот знак означает целочисленное деление. Если в результате такого деления получается остаток, C++ отбрасывает его.
В следующей таблице представлены более сложные операции:
Таблица 2
Операция | Применение | Описание |
++ | ++dan или dan++ | Инкремент-добавление 1 |
-- | --dan или dan-- | Декремент-вычитание 1 |
>> | dan>>n | Сдвиг вправо на n бит |
<< | dan<<n | Сдвиг влево на n бит |
Операции ++ и - - могут использоваться с любой стороны переменной, которую они модифицируют. Если знак ++ или -- стоит слева, то это префиксная операция, если справа - то постфиксная. Если переменная инкрементируется или декрементируется с помощью префиксной операции, то она изменяет свое значение перед тем, как будет использоваться в остальной части выражения. Если используется постфиксный оператор, то переменная изменяется после обработки всего выражения.
Пример 1. int dan = 1; //переменная dan сначала примет
cout<< ++ dan; //Значение 2, а затем будет выведена на экран
Пример 2.. int dan = 1; //переменная dan получит значение 2
cout <<dan ++; //ho сначала будет выведено значение 1
В C++ имеются две операции сдвига: влево (<<) и вправо (>>). При левом сдвиге разряды сдвигаются влево, а самый первый разряд устанавливается в ноль. Самый левый сдвигаемый разряд теряется. Если рассматривать целые числа без знака, сдвиг числа влево на одну позицию означает умножение числа на 2.
Примеры: 2 <<1 равно 4
2 << 2 равно 8
2 << 3 равно 16
Представим число 2 в двоичном виде: 00000010. После сдвига влево на одну позицию получаем: 00000100 (410), на две позиции получаем: 00001000 (810), на три позиции: 00010000 (1610).
При операции правого сдвига разряды сдвигаются вправо. Младшие сдвигаемые разряды отбрасываются. Чтобы разделить беззнаковое целое число на 2, достаточно сдвинуть разряды на один вправо.
Логические выражения
Логические (булевские) выражения могут иметь только два значения. Если результат логического выражения равен 0, ответ считается ложным. Если результат - не 0, то ответ считается истинным. Операции, используемые в логических выражениях, представлены в таблице 3.
Таблица 3.
Операция | Применение | Описание |
> | danl>dan2 | Больше |
>= | danl>=dan2 | Больше или равно |
< | danl<dan2 | Меньше |
<= | danl<=dan2 | Меньше или равно |
= = | danl==dan2 | Равно |
1= | danl!==dan2 | Не равно |
j | Idan | Нет (Отрицание) |
&& | danl&<&dan2 | Логическое И |
|| | danl||dan2 | Логическое ИЛИ |
'
Первые 6 операций являются операциями отношения, три последние операции являются логическими. Операция логическое И дает результат ИСТИНА только тогда, когда оба аргумента истины. Операция логическое ИЛИ возвращает значение ЛОЖЬ, только если оба аргумента ложны. Оператор отрицания просто инвертирует значение, т. е. изменяет его на противоположное.
Дата добавления: 2015-04-11; просмотров: 14 | Поможем написать вашу работу | Нарушение авторских прав |