---

name: Арифметические операции
theory: |
  На базовом уровне компьютеры оперируют только числами. Даже в прикладных программах на высокоуровневых языках внутри много чисел и операций над ними. К счастью, для старта достаточно знать обычную арифметику — с неё и начнем.

  Для сложения двух чисел в математике мы пишем, например, `3 + 4`. В программировании — то же самое. Вот программа, складывающая два числа:

  ```php
  <?php

  // Не забываем точку с запятой в конце, так как каждая строчка в коде — инструкция.
  3 + 4;
  ```

  _Помните про комментарии? Выше в коде после символов `//` — комментарий от учителя_.

  Арифметика в программировании практически не отличается от школьной арифметики.

  Инструкция `3 + 4;` заставит интерпретатор сложить числа и узнать результат. Эта программа будет работать, но в ней нет смысла, потому что по сути **мы не даём команду** интерпретатору, мы просто говорим ему «смотри, сумма трёх и четырёх». В реальной работе недостаточно сообщать интерпретатору о математическом выражении. Например, при создании интернет-магазина недостаточно просить интерпретатор посчитать стоимость товаров в корзине, а нужно просить посчитать стоимость **И** показать цену покупателю.

  Нам нужно попросить интерпретатор сложить `3 + 4` **И** дать команду сделать что-то с результатом. Например, вывести его на экран:

  ```php
  <?php

  // снова не забываем точку с запятой в конце строчки
  print_r(3 + 4);
  ```

  После запуска на экране появится результат:

  <pre class='hexlet-basics-output'>
  7
  </pre>

  Кроме сложения доступны следующие операции:

  * `*` — умножение
  * `/` — деление
  * `-` — вычитание
  * `%` — [остаток от деления](https://ru.wikipedia.org/wiki/Деление_с_остатком)
  * `**` — возведение в степень

  Теперь давайте выведем на экран результат деления, а потом результат возведения в степень:

  ```php
  <?php

  print_r(8 / 2);  // => 4
  print_r(3 ** 2); // => 9
  ```

  Иногда для удобства мы будем показывать в комментариях результат запуска строчек кода вот так: `=> РЕЗУЛЬТАТ`. Например, `// => 4`.

  Первая инструкция выведет на экран `4` (потому что 8 / 2 это 4), а вторая инструкция выведет на экран 9 (потому что 3<sup>2</sup> это 9).

instructions: |

  Выведите на экран результат деления числа `81` на `9`.

tips:
  - |
    Всегда отбивайте арифметические операторы пробелами от самих чисел (операндов) – это хороший стиль программирования. Поэтому в наших примерах `print_r(3 + 4)`, а не `print_r(3+4)`.
  - |
    Деление на ноль приводит к ошибке `Division by zero`. Чтобы его не допустить, нужно знать про условные конструкции (о них вы узнаете в следующих уроках).
  - |
    Если в редакторе есть запись `// BEGIN` и `// END`, то код нужно писать между этими строчками.
