На прошлом занятии данные ты вписывал прямо в код. Но инженерная программа считает по введённым данным: оператор задаёт параметры — программа выдаёт результат. Сегодня научимся спрашивать данные командой input, превращать их в числа и считать по формуле. В конце соберём инженерный калькулятор — расчёт передаточного отношения.

После урока сможешь: Учим программу спрашивать данные командой input, превращать текст в числа (int/float) и считать по формуле — с делением нацело, остатком, степенью и округлением. В конце собираешь калькулятор передаточного отношения.
input — программа спрашивает данные
Команда input показывает приглашение, ждёт, пока пользователь введёт значение и нажмёт Enter, и отдаёт введённое обратно в программу. Результат обычно сразу кладут в переменную.
imya = input("Название узла: ")
print(f"Принято: {imya}")
Название узла: Привод М1
Принято: Привод М1
Важно:
inputвсегда возвращает текст (str) — даже если ввели цифры. Введёшь5— в переменной окажется текст"5", а не число 5. Это та самая ловушка типов с прошлого занятия.
Превращаем текст в число: int и float
Чтобы считать, нужно именно число. Текст в целое число превращает команда int, а в дробное — float. После этого с числом можно выполнять арифметику: сложение +, вычитание -, умножение *, деление /.
text = input("Число зубьев: ")
zubya = int(text)
print(f"Через одно больше: {zubya + 1}")
Число зубьев: 40
Через одно больше: 41
Текст превращаем в число командой int():
input() даёт ТЕКСТ: "40" считать нельзя
|
int()
v
ЧИСЛО: 40 можно: + - * /
float("3.5") -> 3.5 (для дробных значений)
Если забыть
intи сложить текст, Python склеит строки:"40" + "1"даст"401", а не 41. Поэтому перед расчётом —int(илиfloatдля дробных).
Особые операции: //, %, **
Кроме обычных операций инженеру часто нужны три особые: // — деление нацело (сколько целых раз поместилось), % — остаток от деления, ** — возведение в степень. Обычное деление / всегда даёт дробное число.
print(17 // 5)
print(17 % 5)
print(2 ** 3)
print(10 / 4)
3
2
8
2.5
Деление с остатком: 17 разделить на 5 17 // 5 = 3 (сколько ПОЛНЫХ пятёрок поместилось) 17 % 5 = 2 (сколько осталось — ОСТАТОК) 2 ** 3 = 8 (2 в степени 3 = 2*2*2) 10 / 4 = 2.5 (обычное деление — всегда дробное) проверка: 3 * 5 + 2 = 17
Где это нужно:
%проверяет кратность (n % 2 == 0— чётное), а//отвечает на вопросы вроде «сколько полных оборотов уместилось».
Округление: round
Дробный результат расчёта обычно округляют. Команда round(число, знаков) округляет до нужного числа знаков после запятой. Например, до двух знаков — как принято в инженерных отчётах.
skorost = 10 / 3
print(skorost)
print(round(skorost, 2))
3.3333333333333335
3.33
round(x, 2)оставляет 2 знака после запятой,round(x)без второго числа округляет до целого. Округление — для вывода результата, в расчётах держи полное число.
Миссия: инженерный калькулятор
Скопируй программу в песочницу и запусти. Она спросит число зубьев двух шестерён и посчитает передаточное отношение. Попробуй разные значения: 40 и 20, 60 и 15. Передаточное отношение показывает, во сколько раз меняется скорость вращения.
# Калькулятор передаточного отношения
z_vedomaya = int(input("Зубьев ведомой шестерни: "))
z_veduschaya = int(input("Зубьев ведущей шестерни: "))
otnoshenie = z_vedomaya / z_veduschaya
print(f"Передаточное отношение: {round(otnoshenie, 2)}")
Зубьев ведомой шестерни: 40
Зубьев ведущей шестерни: 20
Передаточное отношение: 2.0
Контрольный вопрос. Пользователь ввёл 5 в ответ на input(). Что окажется в переменной?
Подсказка: Вспомни главное правило про input: что он возвращает всегда?
Онлайн-проверка ответа появится позже
Контрольный вопрос. Какая команда превращает текст «40» в целое число 40, чтобы можно было считать?
Подсказка: Целое число по-английски integer. Команда называется так же сокращённо.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Что выведет программа из этого задания? Впиши число.
Исходный код для этого задания:
summa = int("100") print(summa * 4)Подсказка: int(«100») превращает текст «100» в число 100. Дальше умножаем на 4.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Что выведет программа из этого задания? Впиши число.
Исходный код для этого задания:
print(17 // 5)Подсказка: // — деление нацело: сколько ПОЛНЫХ пятёрок помещается в 17.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Что выведет программа из этого задания? Впиши число.
Исходный код для этого задания:
print(17 % 5)Подсказка: % — это остаток от деления. 17 = 3*5 + остаток.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Что выведет программа из этого задания? Впиши число (с точкой, если дробное).
Исходный код для этого задания:
print(10 / 4)Подсказка: Обычное деление / всегда даёт дробное число, даже если делится не нацело.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Что выведет программа из этого задания? Впиши число.
Исходный код для этого задания:
x = 10 / 3 print(round(x, 2))Подсказка: round(x, 2) округляет до двух знаков после запятой. 10/3 = 3.333…
Онлайн-проверка ответа появится позже
Задание. Напиши код сам. В переменной text лежит текст с числом. Напиши команду print, которая превратит этот текст в целое число командой int и выведет его.
Исходный код для этого задания:
text = "40" # напиши ниже команду print, которая выведет text как целое числоПодсказка: Сначала int(…) превращает текст в число, потом print выводит. Шаблон: print(int(имя_переменной)).
✅ Готово, если: программа запускается без ошибок и выводит то, что просят в задании.
Онлайн-проверка ответа появится позже
Задание. Напиши код сам. Передаточное отношение — это число зубьев ведомой шестерни, делённое на число зубьев ведущей. Переменные z_vedomaya и z_veduschaya уже заданы. Напиши команду print, которая выведет их отношение.
Исходный код для этого задания:
z_vedomaya = 40 z_veduschaya = 20 # напиши ниже команду print, которая выведет z_vedomaya, делённое на z_veduschayaПодсказка: Деление — знак /. Шаблон: print(z_vedomaya / z_veduschaya).
✅ Готово, если: программа запускается без ошибок и выводит то, что просят в задании.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Программа должна сложить два введённых числа, но при вводе 5 и 3 печатает 53 вместо 8. В чём ошибка?
Исходный код для этого задания:
a = input("Первое: ") b = input("Второе: ") print(a + b)Подсказка: Вспомни, что input возвращает текст. Что будет, если складывать два текста?
Онлайн-проверка ответа появится позже
Контрольный вопрос. Что выведет программа из этого задания? Впиши число (с точкой, если дробное).
Исходный код для этого задания:
put = 100 vremya = 4 print(put / vremya)Подсказка: Средняя скорость = путь / время. Обычное деление даёт дробное число (тут делится нацело, но тип дробный).
Онлайн-проверка ответа появится позже
Задание. Напиши код сам. Средняя скорость = путь / время. Переменные put и vremya заданы. Напиши команду print, которая выведет среднюю скорость, округлённую до 2 знаков после запятой.
Исходный код для этого задания:
put = 100 vremya = 3 # напиши ниже команду print со средней скоростью, округлённой до 2 знаковПодсказка: Сначала посчитай put / vremya, потом оберни в round(…, 2). Шаблон: print(round(put / vremya, 2)).
✅ Готово, если: программа запускается без ошибок и выводит то, что просят в задании.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Что выведет программа из этого задания? Впиши число (с точкой, если дробное).
Исходный код для этого задания:
a = int("7") b = int("3") print(a // b + a % b)Подсказка: Считай по очереди: 7 // 3 (деление нацело) плюс 7 % 3 (остаток). Потом сложи.
Онлайн-проверка ответа появится позже
Задание. Напиши программу целиком (4-5 строк). Спроси у пользователя два числа зубьев командой input, преврати оба в целые числа через int, посчитай передаточное отношение (ведомая делить на ведущую) и выведи его округлённым до 2 знаков. Используй имена z_vedomaya и z_veduschaya.
Исходный код для этого задания:
# напиши программу из 4-5 строк: # 1) z_vedomaya = int(input(...)) # 2) z_veduschaya = int(input(...)) # 3) посчитать отношение # 4) print(round(..., 2))Подсказка: z_vedomaya = int(input(«Ведомая: «)); z_veduschaya = int(input(«Ведущая: «)); otnoshenie = z_vedomaya / z_veduschaya; print(round(otnoshenie, 2)).
✅ Готово, если: программа запускается без ошибок и выводит то, что просят в задании.
Онлайн-проверка ответа появится позже
Что дальше
Теперь твои программы умеют спрашивать данные, превращать их в числа и считать по формуле с округлением. На следующем занятии научим программу принимать решения — реагировать на показание датчика командой if.
Итог: Теперь твои программы умеют спрашивать данные, превращать их в числа и считать по формуле с округлением. На следующем занятии научим программу принимать решения — реагировать на показание датчика командой
if.
