JavaScript: Арифметические операции
На базовом уровне компьютеры работают только с числами. Даже если вы пишете сложное приложение на современном языке программирования, внутри него всегда происходят многочисленные вычисления: сложение, вычитание, деление и т.д.
К счастью, чтобы начать программировать, достаточно знать обычную школьную арифметику. С нее мы и начнем.
Сложение в JavaScript
В математике для сложения мы пишем 3 + 4. В JavaScript все точно так же:
3 + 4;Этот код действительно можно запустить: интерпретатор выполнит вычисление. Но... он не сделает с результатом ничего. То есть 7 получится, но вы его не увидите.
Чтобы увидеть результат, нужно его вывести
В реальной программе просто посчитать значение недостаточно. Нужно сделать что-то с результатом, например, показать его пользователю.
Для этого используем уже привычную команду console.log():
// Сначала вычисляется сумма,
// затем она передается в функцию печати
console.log(3 + 4);console.log(3 + 4)
└─┬─┘
7
console.log(7) → 7Результат выполнения:
7Если записать то же выражение в виде строки, мы получим совсем другой результат — на печать будет выведена строка «как есть»:
console.log('3 + 4'); // выводит: 3 + 4
console.log(3 + 4); // выводит: 7Другие арифметические операции
JavaScript поддерживает все привычные операции + несколько специфичных, связанных с тем, как хранятся и обрабатываются числа на компьютере:
| Операция | Символ | Пример | Результат |
|---|---|---|---|
| Сложение | + | 2 + 3 | 5 |
| Вычитание | - | 7 - 2 | 5 |
| Умножение | * | 4 * 3 | 12 |
| Деление | / | 8 / 2 | 4 |
| Возведение в степень | ** | 3 ** 2 | 9 |
| Остаток от деления | % | 7 % 3 | 1 |
Вот как можно вывести результат деления и возведения в степень:
console.log(8 / 2); // => 4
console.log(3 ** 2); // => 9Что такое остаток от деления (%)
Эта операция называется взятие остатка от деления. Она показывает, что «остается», когда одно число делится на другое не полностью. Пример:
console.log(7 % 3); // => 1Почему результат равен 1?
- 7 делится на 3 дважды: 3 * 2 = 6
- До 7 остается 1, и это является остатком.
Другие примеры:
console.log(10 % 4); // => 2 (10 делится на 4 дважды: 4 * 2 = 8, остаток 2)
console.log(15 % 5); // => 0 (делится без остатка)Операция % часто используется в программировании, например, чтобы проверить, делится ли число нацело (если остаток 0).
Оформление арифметических выражений
С точки зрения JavaScript между 3+4 и 3 + 4 нет разницы. Интерпретатор поймет оба варианта одинаково. Разница только в оформлении кода. В программировании принято ставить пробелы вокруг арифметических операторов, потому что так выражения проще читать:
console.log(3 + 4);
console.log(8 / 2);
console.log(7 % 3);Задание
Вы зашли в оптовый магазин и увидели упаковку из 9 батареек за 81 рубль. В обычном магазине одна батарейка стоит 12 рублей. Рассчитайте и выведите цену одной батарейки в оптовой упаковке, чтобы понять, где выгоднее покупать.
Полезное
Всегда отбивайте арифметические операторы пробелами от самих чисел (операндов) – это хороший стиль программирования. Поэтому в наших примерах
console.log(3 + 4), а неconsole.log(3+4).Деление на ноль — это
Infinity(бесконечность). Мы разберёмся с тем, что это значит, в будущих уроках.
JavaScript: Арифметические операции
На базовом уровне компьютеры работают только с числами. Даже если вы пишете сложное приложение на современном языке программирования, внутри него всегда происходят многочисленные вычисления: сложение, вычитание, деление и т.д.
К счастью, чтобы начать программировать, достаточно знать обычную школьную арифметику. С нее мы и начнем.
Сложение в JavaScript
В математике для сложения мы пишем 3 + 4. В JavaScript все точно так же:
3 + 4;Этот код действительно можно запустить: интерпретатор выполнит вычисление. Но... он не сделает с результатом ничего. То есть 7 получится, но вы его не увидите.
Чтобы увидеть результат, нужно его вывести
В реальной программе просто посчитать значение недостаточно. Нужно сделать что-то с результатом, например, показать его пользователю.
Для этого используем уже привычную команду console.log():
// Сначала вычисляется сумма,
// затем она передается в функцию печати
console.log(3 + 4);console.log(3 + 4)
└─┬─┘
7
console.log(7) → 7Результат выполнения:
7Если записать то же выражение в виде строки, мы получим совсем другой результат — на печать будет выведена строка «как есть»:
console.log('3 + 4'); // выводит: 3 + 4
console.log(3 + 4); // выводит: 7Другие арифметические операции
JavaScript поддерживает все привычные операции + несколько специфичных, связанных с тем, как хранятся и обрабатываются числа на компьютере:
| Операция | Символ | Пример | Результат |
|---|---|---|---|
| Сложение | + | 2 + 3 | 5 |
| Вычитание | - | 7 - 2 | 5 |
| Умножение | * | 4 * 3 | 12 |
| Деление | / | 8 / 2 | 4 |
| Возведение в степень | ** | 3 ** 2 | 9 |
| Остаток от деления | % | 7 % 3 | 1 |
Вот как можно вывести результат деления и возведения в степень:
console.log(8 / 2); // => 4
console.log(3 ** 2); // => 9Что такое остаток от деления (%)
Эта операция называется взятие остатка от деления. Она показывает, что «остается», когда одно число делится на другое не полностью. Пример:
console.log(7 % 3); // => 1Почему результат равен 1?
- 7 делится на 3 дважды: 3 * 2 = 6
- До 7 остается 1, и это является остатком.
Другие примеры:
console.log(10 % 4); // => 2 (10 делится на 4 дважды: 4 * 2 = 8, остаток 2)
console.log(15 % 5); // => 0 (делится без остатка)Операция % часто используется в программировании, например, чтобы проверить, делится ли число нацело (если остаток 0).
Оформление арифметических выражений
С точки зрения JavaScript между 3+4 и 3 + 4 нет разницы. Интерпретатор поймет оба варианта одинаково. Разница только в оформлении кода. В программировании принято ставить пробелы вокруг арифметических операторов, потому что так выражения проще читать:
console.log(3 + 4);
console.log(8 / 2);
console.log(7 % 3);Задание
Вы зашли в оптовый магазин и увидели упаковку из 9 батареек за 81 рубль. В обычном магазине одна батарейка стоит 12 рублей. Рассчитайте и выведите цену одной батарейки в оптовой упаковке, чтобы понять, где выгоднее покупать.
Полезное
Всегда отбивайте арифметические операторы пробелами от самих чисел (операндов) – это хороший стиль программирования. Поэтому в наших примерах
console.log(3 + 4), а неconsole.log(3+4).Деление на ноль — это
Infinity(бесконечность). Мы разберёмся с тем, что это значит, в будущих уроках.
Ваше упражнение проверяется по этим тестам
// @ts-check
import { expect, test, vi } from 'vitest';
test('basic', async () => {
const consoleLogSpy = vi.spyOn(console, 'log');
await import('./index.js');
const firstArg = consoleLogSpy.mock.calls.join('\n');
expect(firstArg).toBe('9');
});Решение учителя откроется через:
20:00
