Основы программирования на Python: переменные, типы данных, ввод/вывод — тренажёр для 8 класса
8 класс • Информатика
Тренажёр по теме «Основы программирования на Python: переменные, типы данных, ввод/вывод» для 8 класса на объяснять понятия «переменная», «тип данных», «оператор присваивания», использовать основные типы данных Python: int, float, str, bool, писать программы с операторами ввода input() и вывода print(). Задания соответствуют разделу «ФРП по информатике, 8 класс: Основы программирования. Переменные. Типы данных. Операторы ввода и вывода. Арифметические операции. Язык Python» федеральной рабочей программы. 15 заданий с автоматической проверкой ответов, подсказками и разбором решения. Заниматься можно бесплатно, без регистрации.
Задания в теме
Загружаем задание…
Справка
Проверено методистом
Михаил ИгнатьевУчитель высшей квалификационной категорииИсточник
[1] Примерная основная образовательная программа основного общего образования, раздел «ФРП по информатике, 8 класс: Основы программирования. Переменные. Типы данных. Операторы ввода и вывода. Арифметические операции. Язык Python», ФГОС ООО.
Что нужно уметь по этой теме
- объяснять понятия «переменная», «тип данных», «оператор присваивания»
- использовать основные типы данных Python: int, float, str, bool
- писать программы с операторами ввода input() и вывода print()
- выполнять арифметические операции в Python, включая целочисленное деление и остаток
- выполнять преобразование типов: int(), float(), str()
Соответствие программе
Кодификатор ФИПИ: 2.2.1, 2.2.2, 2.2.3
ФРП: ФРП по информатике, 8 класс: Основы программирования. Переменные. Типы данных. Операторы ввода и вывода. Арифметические операции. Язык Python
Часы по ФРП на раздел: 8
Прогресс по этой теме: 0 верно, 0 неверно, 0 пропущено из 15 заданий.
Как разобраться в теме: полный разбор
Раздел 1 — Определение
Переменная — это именованная ячейка памяти компьютера, предназначенная для хранения значения, которое программа может читать и изменять во время выполнения. Имя переменной служит адресом, по которому исполнитель находит данные, а само значение хранится в оперативной памяти.
Тип данных определяет множество допустимых значений и набор операций над ними. Число 5 и строка "5" в Python занимают разную память и ведут себя по-разному: 5 + 5 даёт 10, а "5" + "5" даёт "55". Python относится к языкам с динамической типизацией: тип определяется автоматически по виду записанного значения, а не объявляется заранее.
Оператор присваивания (знак =) связывает имя переменной со значением выражения, стоящего справа. Порядок действий строгий: сначала вычисляется правая часть, затем результат записывается в переменную слева. Запись x = x + 1 поэтому корректна: справа берётся старое значение, слева сохраняется новое.
Тема занимает базовое место в разделе «Основы программирования»: без переменных, типов и операторов ввода-вывода невозможно построить ни ветвление, ни цикл, ни работу с массивами.
Раздел 2 — Ключевые правила
Переменная в Python создаётся в момент первого присваивания — отдельная команда объявления не нужна.
- Имя переменной состоит из латинских букв, цифр и знака подчёркивания, но не начинается с цифры и не совпадает с ключевым словом языка. Верно:
speed_2,n,total. Неверно:2speed,моя переменная,input(перекрывает встроенную функцию). - Тип определяется значением.
a = 7создаётint,a = 7.0—float,a = "7"—str,a = True—bool. Проверить тип позволяет функцияtype(a). - Функция `input()` всегда возвращает строку, даже если пользователь ввёл цифры. Для арифметики строку преобразуют:
n = int(input()). - Функция `print()` выводит значения через пробел и переводит строку. Разделитель меняется параметром
sep, конец строки — параметромend:print(a, b, sep="; ", end=""). - Арифметические операции записываются так:
+,-,*,/(деление, всегда даётfloat),//(целая часть частного),%(остаток),**(степень). - Преобразование типов выполняют функции
int(),float(),str(). Дробное число приint()усекается в сторону нуля:int(9.8)равно 9.
Раздел 3 — Разбор примеров
Пример 1. Присваивание и обмен значений
``python
a = 3
b = 5
a, b = b, a
print(a, b) # 5 3
Справа вычисляется пара (5, 3), и только после этого значения записываются в a и b`. Вывод: множественное присваивание меняет переменные местами без вспомогательной переменной.
Пример 2. Ввод числа и ошибка типа
``python
n = input() # пользователь ввёл 4
print(n * 3) # 444
Переменная n хранит строку "4", а умножение строки на число повторяет её. Вывод: перед вычислениями ввод преобразуют — n = int(input())` даст 12.
Пример 3. Целочисленное деление и остаток
``python
minutes = 137
print(minutes // 60, minutes % 60) # 2 17
Оператор // отвечает на вопрос «сколько целых часов», % — «сколько минут осталось». Вывод: пара // и %` решает все задачи на разбиение величины на разряды и единицы измерения.
Пример 4. Цифры трёхзначного числа
``python
x = int(input()) # 486
d1 = x // 100 # 4
d2 = x // 10 % 10 # 8
d3 = x % 10 # 6
print(d1 + d2 + d3) # 18
Деление на 100 отбрасывает две младшие цифры, комбинация // 10 % 10 выделяет десятки. Вывод: порядок операций слева направо при одинаковом приоритете // и %`.
Пример 5. Смешение типов при выводе
``python
age = 14
print("Возраст: " + str(age)) # Возраст: 14
print("Возраст:", age) # Возраст: 14
Оператор + требует одинаковых типов, поэтому число переводится в строку функцией str(); запятая в print() соединяет разнотипные значения сама. Вывод: два корректных способа, ошибочен только "Возраст: " + age`.
Раздел 4 — Таблица
| Объект | Характеристика | Значение / пример |
|---|---|---|
int | Целые числа, память не ограничена разрядностью | -7, 0, 1000000 |
float | Вещественные числа с плавающей точкой, разделитель — точка | 3.14, -0.5, 2.0 |
str | Строка символов в кавычках | "Python", '8 класс' |
bool | Логический тип, два значения | True, False |
input() | Возвращает тип | всегда str |
int(input()) | Возвращает тип | int |
7 / 2 | Результат и тип | 3.5, float |
7 // 2 | Результат и тип | 3, int |
7 % 2 | Результат | 1 |
-7 // 2 | Округление вниз, к меньшему целому | -4 |
2 ** 10 | Возведение в степень | 1024 |
int("12") | Строка цифр → число | 12 |
int("12.5") | Строка с точкой → ошибка | ValueError |
float("12.5") | Строка с точкой → число | 12.5 |
str(12) | Число → строка | "12" |
Раздел 5 — Типичные ошибки
Забытое преобразование ввода. Причина: input() внешне похож на ввод числа, но возвращает строку. Неправильно: a = input(); b = input(); print(a + b) для 2 и 3 даёт "23". Правильно: a = int(input()); b = int(input()) — получится 5.
Склеивание строки и числа знаком `+`. Причина: смешение операций конкатенации и сложения. Неправильно: print("Итого " + 100) → TypeError. Правильно: print("Итого", 100) или print("Итого " + str(100)).
Путаница `/` и `//`. Причина: обычное деление в Python всегда даёт float, даже при нацело делящихся числах: 10 / 5 равно 2.0. Неправильно для количества коробок: n / 10. Правильно: n // 10.
Присваивание в обратную сторону. Причина: восприятие = как математического равенства. Неправильно: 5 = x. Правильно: x = 5; слева от = стоит только имя переменной.
Имя переменной совпадает с именем функции. Причина: невнимание к встроенным словам. Неправильно: print = 5 — после этого вывод перестаёт работать. Правильно: count = 5, result = 5.
Раздел 6 — Пошаговый алгоритм
- Прочитайте условие и выпишите исходные данные и результат.
- Придумайте осмысленные имена переменных для каждой величины:
price,count,total. - Определите тип каждой входной величины: целое —
int(), дробное —float(), текст — без преобразования. - Запишите ввод:
count = int(input()). - Составьте выражение для вычислений, расставив скобки по приоритету операций.
- Выберите оператор деления:
//и%для целых частей и остатков,/для точного значения. - Запишите вывод через
print(), добавив поясняющий текст запятой. - Проверьте программу на контрольном примере из условия и на крайнем случае (ноль, отрицательное число); сравните полученный результат с ожидаемым.
Раздел 7 — Как запомнить
- «Стрелка влево»: читайте
x = 5как «вxположить 5» — тогда записьx = x + 1перестаёт казаться противоречием. - «input — рот, print — рупор»: рот принимает только текст (
str), рупор говорит что угодно. - Правило деления в одну строку:
/— дробь,//— сколько целых,%— что осталось. Проверка на часах:137 // 60 = 2,137 % 60 = 17. - Четыре типа — четыре вопроса: «целое?» →
int, «с точкой?» →float, «в кавычках?» →str, «да или нет?» →bool. - Тест на сомнение: если непонятно, что хранится в переменной, вставьте
print(type(x))— интерпретатор ответит точно.
Частые вопросы
Чем // отличается от / в Python?
// — целочисленное деление (результат int, остаток отбрасывается); / — обычное деление с вещественным результатом.
Что делает функция input()?
Читает строку, введённую пользователем с клавиатуры, и возвращает её как str.
Как узнать остаток от деления 17 на 5 в Python?
17 % 5 = 2.
Зачем нужно преобразование типов, например int(input())?
Функция input() всегда возвращает строку; для арифметики нужно явно преобразовать в число через int() или float().