Арифметические операции в С++

Арифметические операции в С++
4 (80%) 3 votes




арифметические операции в с++В современной жизни очень сложно обойтись без арифметических операций. Нам постоянно приходится что-то считать: складывать, умножать, вычитать, делить и т.д. Программирование — не исключение. Вам в 99.9% случаев придется ими пользоваться, при написании своих программ. Бояться их не стоит — все арифметические операции — просты, понятны и знакомы нам со школы.

Рассмотрим арифметические операции в следующей таблице.

арифметические операции в с
Арифметические операции в С++ — рис. 1

Тут особое внимание следует уделить делению по модулю (%). Эта операция достаточно часто используется в решении определённых задач. Пример её применения: если нам необходимо поделить по модулю 9 на 4 (9 % 4), результат будет равен 1 (это остаток — то, что на 4 уже не делится на цело). Еще примеры: 20 % 8 = 4 ( 8 помещается в 20-ти 2 раза: 8 * 2 = 16, 20 — 16 = 4 остаток от деления ), 3 % 2 = 1, 99 % 10 = 9, 9 % 10 = 9. Важно:

  • деление по модулю применяется только к целочисленным переменным ;
  • нельзя делить по модулю на 0;

Пример:

Результат компиляции:
арифметические операции в с 2

Тут вы видите, что при делении num1 на num2, на экране появилась только целая часть — 4 (хотя точное значение 4.5). Дробная часть отсекается, так как переменные определены, как целочисленные — int. А в результате деления по модулю мы видим 2 — то что осталось в остатке от деления 18 на 4.

Еще что хотелось бы рассмотреть в данной статье — это так называемые комбинированные (или составные) операторы. Помимо выполнения своей арифметической роли, они одновременно выполняют роль присваивания значения переменным. Вот список таких составных операторов:

арифметические операции в с
Арифметические операции в С++ — рис. 2

Покажу на примере:

Хотя для кого-то, с первого взгляда, эти операторы могут показаться запутанными, поверьте, к ним очень быстро можно привыкнуть и успешно применять в своих программах. Надо только немного попрактиковаться с их применением. Ваш код при этом будет выглядеть компактнее. Так же, использование комбинированных операторов является признаком хорошего тона в программировании. Поэтому, хоть и не будет ошибкой в коде использование сложения отдельно от присваивания — number1 = number1 + number2;, предпочтительней использовать сокращенный вариант записи number1 += number2;

Результат:

арифметические операции в с

В этой статье были рассмотрены только бинарные операторы — те которые применяются для арифметических операций с двумя переменными (операндами). В одной из следующих, мы познакомимся с унарными операторами (для операций с одной переменной) — инкрементом и декрементом, а в будущем — и с тернарным оператором (которому необходимо три операнда).

Желательно закрепить полученные знания практикой — Задачи: Арифметические операции в С++

Рассылка новых уроков по программированию:

Арифметические операции в С++: 13 комментариев

  1. Супер, достаточно доступно всё расписано! Надо только обращать внимание что простой бинарный оператор типа » + » делает просто сложение, а составной бинарный оператор типа » += » помимо сложение (или пр.) ещё и присваивает значение первой переменной (в данном случае number1) каждый раз при вычислении…
    спасибо автору!

  2. А мне понравилось, я всё прекрасно понял, есть бинарные операторы, они применяются для двух переменных допустим в вашем примере: number1 += number2; тут две переменные, значит бинарный, а есть ещё унарные тернарные, вот пример унарного: 34++ или 23—, а может и так: ++34 или —23; Пример тернарного: ? первое утверждение : второе утверждение. Вообщем спасибо за всё, я буду дальше изучать

    1. Операции выполняют всё правильно. Показывайте свои результаты, если у вас что не так.

      Вместе с = может использоваться знак любой бинарной операции … например:
      =&& , =| , =% , =<> …
      И всё даёт правильные результаты … только их нужно правильно толковать (что должно получиться).

    2. Все просто. Ты каждый раз присваиваешь 1 переменной новое значение, не изменяя старое. Просто просмотри последовательность ещё раз.

  3. как осуществить операцию «деление по модулю» для чисел в формате float, long float или doublе???

    1. Для вещественных чисел такая операция как «деление по модулю» не имеет смысла и не определена.

Добавить комментарий

Код размещайте в тегах: <pre class="lang:c++ decode:true ">YOUR CODE</pre>