На базовом уровне компьютеры оперируют только числами. Для сложения двух чисел в математике мы пишем, например, 3 + 4
. В программировании — то же самое. В этом уроке разберем, как проводить арифметические операции в коде.
Рассмотрим пример программы, которая складывает два числа:
<?php
// Не забываем точку с запятой в конце, так как каждая строчка в коде — инструкция
3 + 4;
Арифметика в программировании практически не отличается от школьной. Инструкция 3 + 4;
заставит интерпретатор сложить числа и узнать результат. Эта программа будет работать, но в ней нет смысла, потому что по сути мы не даем команду интерпретатору, мы просто говорим ему «смотри, сумма трех и четырех».
В реальной работе недостаточно сообщать интерпретатору о математическом выражении. Например, при создании интернет-магазина недостаточно просить интерпретатор посчитать стоимость товаров в корзине. В этом случае нужно просить посчитать стоимость и показать цену покупателю.
Нам нужно попросить интерпретатор сложить 3 + 4
и дать команду сделать что-то с результатом. Например, вывести его на экран:
<?php
// Снова не забываем точку с запятой в конце строчки
print_r(3 + 4); // => 7
Кроме сложения доступны следующие операции:
*
— умножение/
— деление-
— вычитание%
— остаток от деления**
— возведение в степеньЭти знаки операций называют операторами.
Выведите на экран результат деления числа 81
на 9
.
Всегда отбивайте арифметические операторы пробелами от самих чисел (операндов) – это хороший стиль программирования. Поэтому в наших примерах print_r(3 + 4)
, а не print_r(3+4)
.
Деление на ноль приводит к ошибке Division by zero
. Чтобы его не допустить, нужно знать про условные конструкции (о них вы узнаете в следующих уроках).
Если в редакторе есть запись // BEGIN
и // END
, то код нужно писать между этими строчками.
Команда проекта находится в телеграм-сообществе по ссылке https://ttttt.me/HexletLearningBot. Там можно задать любой вопрос и повлиять на проект
Если вы зашли в тупик, то самое время поговорить с нашим асситентом Тота во вкладке "Обсуждение". Как правильно задать вопрос:
Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.
Это нормально 🙆, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи. В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.
Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в обратной связи нашего сообщества
Привет! Я Тота и моя задача помочь в обучении. Чтобы активировать меня, нужно зарегистрироваться или залогиниться, если у вас уже есть аккаунт
Ваше упражнение проверяется по этим тестам
1<?php // phpcs:ignore PSR1.Files.SideEffects
2
3namespace HexletBasics\Arithmetics\Basics;
4
5use PHPUnit\Framework\TestCase;
6
7\HexletBasics\Functions\runScript();
8
9class SolutionTest extends TestCase
10{
11 public function test()
12 {
13 $expected = '9';
14 $this->expectOutputString($expected);
15 require 'index.php';
16 }
17}
18
Решение учителя откроется через: