Выдаёт ошибку при написании кода (делаю формулу Брока):
Name = input("Ваше имя")
growth = input("Ваш рост")
weight = input("Ваш вес")
man = (growth-100)*1.15
woman = (growth-100)*1.15
print(Name,("ваш идеальный вес"),man,woman )
ОШИБКА: Traceback (most recent call last):
File "C:/Users/admin/PycharmProjects/Anatolii/Имя.py", line 4, in
man = (growth-100)*1.15
TypeError: unsupported operand type(s) for -: 'str' and 'int'
Ответы на вопрос
Ошибка возникает потому, что функция input() всегда возвращает строку. То есть значение growth у вас имеет тип str, а из строки нельзя вычесть число 100.
Нужно преобразовать введенный рост и вес в число с помощью int() или float():
PythonName = input("Ваше имя: ") growth = float(input("Ваш рост: ")) weight = float(input("Ваш вес: "))man = (growth - 100) * 1.15 woman = (growth - 100) * 1.15print(Name, "ваш идеальный вес:", man, woman)
Например, если ввести рост 180, Python первоначально получает его как строку "180". Поэтому выражение:
Pythongrowth - 100
фактически пытается выполнить:
Python"180" - 100
отсюда и ошибка:
TypeError: unsupported operand type(s) for -: 'str' and 'int'
После float(input(...)) значение будет уже числом:
Python180.0 - 100
и вычисление выполнится нормально.
Переменная weight в текущей программе вообще не используется, поэтому ее можно убрать, если она не нужна для дальнейших расчетов.
Также сейчас формулы для мужчины и женщины у вас полностью одинаковые:
Pythonman = (growth - 100) * 1.15 woman = (growth - 100) * 1.15
Если вы хотели использовать разные варианты формулы Брока, коэффициенты нужно указать отдельно. Например:
PythonName = input("Ваше имя: ") growth = float(input("Ваш рост: "))man = (growth - 100) * 1.15 woman = (growth - 100) * 1.10print(Name) print("Идеальный вес для мужчины:", man, "кг") print("Идеальный вес для женщины:", woman, "кг")
Главная причина вашей ошибки — input() возвращает строку, поэтому перед математическими вычислениями введенные числа нужно преобразовывать через int() или float().
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

