Переменные — инвентарь для данных
Где программа хранит свои вещи.
Старт
У тебя в Minecraft есть инвентарь. 36 слотов. В каждый можно положить что-то одно: меч, еду, блоки.
Теперь представь: ты строишь дом. Тебе нужно запомнить его размеры — ширина 10, длина 15, высота 5. Где хранить эти числа?
В программировании для этого есть переменные. Это как слоты инвентаря, но для данных. Ты кладёшь туда значение, даёшь ему имя и используешь когда нужно.
Теория: Переменные
Переменная — это именованная ячейка памяти. У неё есть:
- Имя — как подпись на сундуке
- Значение — что лежит внутри
- Тип — какого рода данные
# Создаём переменные
ширина = 10
длина = 15
высота = 5
материал = "камень"
есть_крыша = True
| Имя | Значение | Тип | Minecraft-аналогия |
|---|---|---|---|
ширина | 10 | число (int) | Стак из 10 блоков |
длина | 15 | число (int) | Стак из 15 блоков |
высота | 5 | число (int) | Стак из 5 блоков |
материал | "камень" | текст (string) | Табличка с надписью |
есть_крыша | True | логический (bool) | Рычаг: вкл/выкл |
Основные типы данных
- int (целое число) —
64,0,-5. Количество предметов в стаке. - float (дробное число) —
3.14,0.5. Уровень здоровья: 18.5 HP. - string (текст) —
"Привет","diamond_sword". Название предмета. - bool (логический) —
TrueилиFalse. Рычаг: включён или выключен.
Переменные можно менять
Это же переменные. Значение можно обновить:
здоровье = 20 # Полное HP
здоровье = 20 - 7 # Крипер взорвался рядом
здоровье = 13 # Теперь 13 HP
И использовать в вычислениях:
ширина = 10
длина = 15
площадь = ширина * длина # 150
периметр = 2 * (ширина + длина) # 50 блоков стены
Зачем это круто? Потому что если ты решишь изменить размер дома, тебе нужно поменять ОДНО число, а не переписывать всю программу.
Практика
Задание 1: Калькулятор ресурсов
Ты строишь прямоугольную стену. Заполни формулу для подсчёта блоков.
# Калькулятор блоков для стены
длина_стены = 10
высота_стены = 4
блоков_нужно = * # = 40
💡 Подсказка
Площадь прямоугольника — длина умножить на высоту. Используй имена переменных!
✅ Решение
блоков_нужно = длина_стены * высота_стены # 40
Задание 2: Характеристики моба
Создай переменные для описания крипера. Заполни значения:
# Характеристики крипера
имя =
здоровье =
урон_взрыва =
боится_кошек =
💡 Подсказка
Имя — текст в кавычках. Здоровье крипера = 20 HP. Макс. урон взрыва = 49. Боится кошек = True.
✅ Решение
имя = "Creeper"
здоровье = 20
урон_взрыва = 49
боится_кошек = True
Задание 3: Обмен значений
Поменяй содержимое двух слотов местами. Подсказка: нужна третья переменная.
слот_1 = "меч"
слот_2 = "щит"
# Обмен:
временный =
слот_1 =
слот_2 =
💡 Подсказка
Как два сундука: сначала положи первый предмет во временный сундук, потом перемести второй в первый, потом из временного во второй.
✅ Решение
временный = слот_1 # временный = "меч"
слот_1 = слот_2 # слот_1 = "щит"
слот_2 = временный # слот_2 = "меч"
Это классическая задача на собеседованиях. Да, уже на уроке 2 ты решаешь задачи с собесов. 💪
ширина = 10
длина = 15
площадь = ширина * длина
print(площадь)
есть_щит?Сборка: Настраиваемый дом
Черепашка строит дом, размеры которого задаёшь ты через переменные.
# Настройки дома
ширина = 6
длина = 8
высота = 4
материал = "дуб"
# Черепашка строит по твоим параметрам
построй_дом(ширина, длина, высота, материал)
Поменяй значения переменных и запусти снова. Видишь, как один и тот же код строит разные дома? Вот в этом сила переменных — код пишешь один раз, а результат меняешь, подставляя другие данные.
Ты строишь коробку 10×12×5 из блоков. Нужно посчитать общее количество блоков на стены, пол и потолок.
Пол и потолок: по 10 × 12 = 120 каждый. А стены?
ширина = 10
длина = 12
высота = 5
пол = ширина * длина # 120
потолок = ширина * длина # 120
стены = ???
всего = пол + потолок + стены
Сколько блоков нужно на стены (высота стен = 3 ряда, т.к. минус пол и потолок)?
Итоги
Теперь ты знаешь:
- ✅ Переменная = именованная ячейка для данных
- ✅ Четыре базовых типа: числа, текст, логический
- ✅ Переменные можно менять и использовать в вычислениях
- ✅ Одна программа + разные переменные = разные результаты
Пасхалка: Знаешь, почему переменную для обмена значений называют temp? Это сокращение от temporary (временный). Программисты ленивые — им лень писать полные слова. Привыкай. 😎
В следующем уроке: черепашка научится принимать решения. Если крипер — бежим. Если корова — игнорируем. Это называется «условия».