Карта курса → Модуль 1 → Урок 1.2

Переменные — инвентарь для данных

Где программа хранит свои вещи.

Урок 1.2

🎣 Старт

У тебя в Minecraft есть инвентарь. 36 слотов. В каждый можно положить что-то одно: меч, еду, блоки.

Теперь представь: ты строишь дом. Тебе нужно запомнить его размеры — ширина 10, длина 15, высота 5. Где хранить эти числа?

В программировании для этого есть переменные. Это как слоты инвентаря, но для данных. Ты кладёшь туда значение, даёшь ему имя и используешь когда нужно.

🧠 Теория: Переменные

Переменная — это именованная ячейка памяти. У неё есть:

# Создаём переменные
ширина = 10
длина = 15
высота = 5
материал = "камень"
есть_крыша = True
ИмяЗначениеТипMinecraft-аналогия
ширина10число (int)Стак из 10 блоков
длина15число (int)Стак из 15 блоков
высота5число (int)Стак из 5 блоков
материал"камень"текст (string)Табличка с надписью
есть_крышаTrueлогический (bool)Рычаг: вкл/выкл

Основные типы данных

Переменные можно менять

Это же переменные. Значение можно обновить:

здоровье = 20        # Полное HP
здоровье = 20 - 7    # Крипер взорвался рядом
здоровье = 13        # Теперь 13 HP

И использовать в вычислениях:

ширина = 10
длина = 15
площадь = ширина * длина    # 150
периметр = 2 * (ширина + длина)  # 50 блоков стены

Зачем это круто? Потому что если ты решишь изменить размер дома, тебе нужно поменять ОДНО число, а не переписывать всю программу.

🧩 Квиз +10 XP
Что из этого лучше всего описывает переменную?
A Команда для компьютера
B Кнопка в программе
C Именованная ячейка для хранения данных
D Тип компьютера

🔧 Практика

Задание 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 XP
Что выведет этот код?
ширина = 10
длина = 15
площадь = ширина * длина
print(площадь)
A 25
B "ширина * длина"
C Ошибку
D 150
🧩 Квиз +10 XP
Какой тип данных лучше всего подходит для переменной есть_щит?
A int (число)
B bool (логический)
C string (текст)
D float (дробное число)

🏗️ Сборка: Настраиваемый дом

Черепашка строит дом, размеры которого задаёшь ты через переменные.

# Настройки дома
ширина = 6
длина = 8
высота = 4
материал = "дуб"

# Черепашка строит по твоим параметрам
построй_дом(ширина, длина, высота, материал)

Поменяй значения переменных и запусти снова. Видишь, как один и тот же код строит разные дома? Вот в этом сила переменных — код пишешь один раз, а результат меняешь, подставляя другие данные.

👹 Босс: Калькулятор строителя +75 XP

Ты строишь коробку 10×12×5 из блоков. Нужно посчитать общее количество блоков на стены, пол и потолок.

Пол и потолок: по 10 × 12 = 120 каждый. А стены?

ширина = 10
длина = 12
высота = 5

пол = ширина * длина           # 120
потолок = ширина * длина        # 120
стены = ???
всего = пол + потолок + стены

Сколько блоков нужно на стены (высота стен = 3 ряда, т.к. минус пол и потолок)?

A 120
B 88
C 120 (периметр 40 × 3 ряда = 120, если не вычитать углы)
D 200

💭 Итоги

Теперь ты знаешь:

  • ✅ Переменная = именованная ячейка для данных
  • ✅ Четыре базовых типа: числа, текст, логический
  • ✅ Переменные можно менять и использовать в вычислениях
  • ✅ Одна программа + разные переменные = разные результаты

Пасхалка: Знаешь, почему переменную для обмена значений называют temp? Это сокращение от temporary (временный). Программисты ленивые — им лень писать полные слова. Привыкай. 😎

В следующем уроке: черепашка научится принимать решения. Если крипер — бежим. Если корова — игнорируем. Это называется «условия».