|
1 |
| -На базовом уровне компьютеры оперируют только числами. Даже в прикладных программах на высокоуровневых языках внутри много чисел и операций над ними. Но для старта достаточно знать обычную арифметику — с нее и начнем. |
| 1 | +На базовом уровне компьютеры работают только с числами. Даже если вы пишете сложное приложение на современном языке программирования, внутри него всегда происходят многочисленные вычисления: сложение, вычитание, деление и т.д. |
2 | 2 |
|
3 |
| -Например, для сложения двух чисел в математике мы пишем: `3 + 4`. В программировании — то же самое. Вот программа, которая складывает два числа: |
| 3 | +К счастью, чтобы начать программировать, достаточно знать обычную школьную арифметику. С неё мы и начнём. |
4 | 4 |
|
5 |
| -```python |
| 5 | +## Сложение в Python |
| 6 | + |
| 7 | +В математике для сложения мы пишем 3 + 4. В Python — всё точно так же: |
| 8 | + |
| 9 | +```Python |
6 | 10 | 3 + 4
|
7 | 11 | ```
|
8 | 12 |
|
9 |
| -Арифметика в программировании практически не отличается от школьной арифметики. |
| 13 | +Этот код действительно можно запустить — интерпретатор выполнит вычисление. |
| 14 | +Но... он не сделает с результатом ничего. То есть 7 получится, но вы его не увидите. |
10 | 15 |
|
11 |
| -Строчка кода `3 + 4` заставит интерпретатор сложить числа и узнать результат. Эта программа будет работать, но в ней нет смысла. По сути, мы не даем команду интерпретатору, мы просто говорим ему: «смотри, сумма трех и четырех». В реальной работе недостаточно сообщать интерпретатору о математическом выражении. |
| 16 | +## Чтобы увидеть результат, нужно его вывести |
12 | 17 |
|
13 |
| -Например, если создавать интернет-магазин, недостаточно просить интерпретатор посчитать стоимость товаров в корзине. Нужно просить посчитать стоимость **И** показать цену покупателю. |
| 18 | +В реальной программе просто посчитать значение — недостаточно. Нужно сделать что-то с результатом, например, показать его пользователю. |
14 | 19 |
|
15 |
| -Нам нужно попросить интерпретатор сложить `3 + 4` **И** дать команду сделать что-то с результатом. Например, вывести его на экран: |
| 20 | +Для этого используем функцию `print()`: |
16 | 21 |
|
17 |
| -```python |
18 |
| -# Сначала вычисляется сумма, |
19 |
| -# затем она передается в функцию печати |
| 22 | +```Python |
20 | 23 | print(3 + 4)
|
21 | 24 | ```
|
22 | 25 |
|
23 |
| -После запуска на экране появится результат: |
| 26 | +💡 Здесь сначала вычисляется сумма, затем она передаётся в функцию печати. |
| 27 | + |
| 28 | +Результат выполнения: |
| 29 | + |
| 30 | +<pre class='hexlet-basics-output'> 7 </pre> |
24 | 31 |
|
25 |
| -<pre class='hexlet-basics-output'> |
26 |
| -7 |
27 |
| -</pre> |
| 32 | +## 🧮 Другие арифметические операции |
28 | 33 |
|
29 |
| -Кроме сложения доступны следующие операции: |
| 34 | +Python поддерживает все привычные операции: |
30 | 35 |
|
31 |
| -* `-` — вычитание |
32 |
| -* `*` — умножение |
33 |
| -* `**` — возведение в степень |
34 |
| -* `/` — деление |
35 |
| -* `//` — [целочисленное деление](https://ru.wikipedia.org/wiki/Деление_с_остатком#В_программировании) |
36 |
| -* `%` — [остаток от деления](https://ru.wikipedia.org/wiki/Деление_с_остатком) |
| 36 | +| Операция | Символ | Пример | Результат | |
| 37 | +|------------------------|--------|--------------|-----------| |
| 38 | +| Сложение | `+` | `2 + 3` | `5` | |
| 39 | +| Вычитание | `-` | `7 - 2` | `5` | |
| 40 | +| Умножение | `*` | `4 * 3` | `12` | |
| 41 | +| Деление | `/` | `8 / 2` | `4.0` | |
| 42 | +| Возведение в степень | `**` | `3 ** 2` | `9` | |
| 43 | +| Целочисленное деление | `//` | `7 // 3` | `2` | |
| 44 | +| Остаток от деления | `%` | `7 % 3` | `1` | |
37 | 45 |
|
38 |
| -Теперь выведем на экран результат деления, а потом результат возведения в степень: |
| 46 | +🔍 Обратите внимание: В результате деления `/` мы получаем **число с точкой** (`4.0`), даже если на вид оно целое. Мы разберёмся с этим подробнее в уроках про **типы данных**. |
39 | 47 |
|
40 |
| -```python |
41 |
| -print(8 / 2) # => 4.0 (При делении двух чисел получается тип данных float) |
42 |
| -print(3 ** 2) # => 9 |
| 48 | +Вот как можно вывести результат деления и возведения в степень: |
| 49 | + |
| 50 | +```Python |
| 51 | +print(8 / 2) # => 4.0 |
| 52 | +print(3 ** 2) # => 9 |
43 | 53 | ```
|
44 | 54 |
|
45 |
| -https://replit.com/@hexlet/python-basics-arithmetics-basics |
| 55 | +## ℹ️ Что такое остаток от деления (`%`) |
| 56 | + |
| 57 | +Эта операция называется **взятие остатка от деления**. Она показывает, **что «остаётся»**, когда одно число делится на другое *не полностью*. Пример: |
| 58 | + |
| 59 | +```Python |
| 60 | +print(7 % 3) # => 1 |
| 61 | +``` |
| 62 | + |
| 63 | +📘 Почему результат — 1? |
| 64 | + |
| 65 | + - 7 делится на 3 дважды: 3 * 2 = 6 |
| 66 | + - До 7 остаётся 1 — это и есть остаток. |
| 67 | + |
| 68 | +Другие примеры: |
| 69 | + |
| 70 | +```Python |
| 71 | +print(10 % 4) # => 2 (10 делится на 4 дважды: 4 * 2 = 8, остаток 2) |
| 72 | +print(15 % 5) # => 0 (делится без остатка) |
| 73 | +``` |
| 74 | + |
| 75 | + |
| 76 | +Операция % часто используется в программировании, например: |
46 | 77 |
|
47 |
| -Иногда для удобства мы будем показывать в комментариях результат запуска строчек кода вот так: `=> РЕЗУЛЬТАТ`. Например, `# => 4`. |
| 78 | + - чтобы проверить, делится ли число нацело (если остаток 0) |
| 79 | + - чтобы выполнять циклические действия, например, поведение по чётным/нечётным индексам |
48 | 80 |
|
49 |
| -Первая инструкция выведет на экран `4` (потому что 8 / 2 равно 4), а вторая инструкция выведет на экран 9 (потому что 3<sup>2</sup> равно 9). |
| 81 | +Мы ещё неоднократно встретим % в задачах и разберём его применение на практике. |
0 commit comments