PHP: Арифметические операции
На базовом уровне компьютеры оперируют только числами. Даже в прикладных программах на высокоуровневых языках внутри много чисел и операций над ними. К счастью, для старта достаточно знать обычную арифметику — с неё и начнем.
Для сложения двух чисел в математике мы пишем, например, 3 + 4
. В программировании — то же самое. Вот программа, складывающая два числа:
<?php
// Не забываем точку с запятой в конце, так как каждая строчка в коде — инструкция.
3 + 4;
Помните про комментарии? Выше в коде после символов //
— комментарий от учителя.
Арифметика в программировании практически не отличается от школьной арифметики.
Инструкция 3 + 4;
заставит интерпретатор сложить числа и узнать результат. Эта программа будет работать, но в ней нет смысла, потому что по сути мы не даём команду интерпретатору, мы просто говорим ему «смотри, сумма трёх и четырёх». В реальной работе недостаточно сообщать интерпретатору о математическом выражении. Например, при создании интернет-магазина недостаточно просить интерпретатор посчитать стоимость товаров в корзине, а нужно просить посчитать стоимость И показать цену покупателю.
Нам нужно попросить интерпретатор сложить 3 + 4
И дать команду сделать что-то с результатом. Например, вывести его на экран:
<?php
// снова не забываем точку с запятой в конце строчки
print_r(3 + 4);
После запуска на экране появится результат:
7
Кроме сложения доступны следующие операции:
*
— умножение/
— деление-
— вычитание%
— остаток от деления**
— возведение в степень
Теперь давайте выведем на экран результат деления, а потом результат возведения в степень:
<?php
print_r(8 / 2); // => 4
print_r(3 ** 2); // => 9
Иногда для удобства мы будем показывать в комментариях результат запуска строчек кода вот так: => РЕЗУЛЬТАТ
. Например, // => 4
.
Первая инструкция выведет на экран 4
(потому что 8 / 2 это 4), а вторая инструкция выведет на экран 9 (потому что 32 это 9).
Задание
Выведите на экран результат деления числа 81
на 9
.
Упражнение не проходит проверку — что делать? 😶
Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:
- Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.
В моей среде код работает, а здесь нет 🤨
Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.
Мой код отличается от решения учителя 🤔
Это нормально 🙆, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.
В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.
Прочитал урок — ничего не понятно 🙄
Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.
Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.
Полезное
Всегда отбивайте арифметические операторы пробелами от самих чисел (операндов) – это хороший стиль программирования. Поэтому в наших примерах
print_r(3 + 4)
, а неprint_r(3+4)
.Деление на ноль приводит к ошибке
Division by zero
. Чтобы его не допустить, нужно знать про условные конструкции (о них вы узнаете в следующих уроках).Если в редакторе есть запись
// BEGIN
и// END
, то код нужно писать между этими строчками.