Решаю задачу на определение, через сколько лет отец станет старше сына ровно в два раза. Написал вот такой код:
father_age = float(input("Введите возраст отца: ")) #1
son_age = float(input("Введите возраст сына: ")) #2
years_passed = 0.0 #3
if father_age < 2 * son_age: #4
print("Отец уже никогда не будет старше своего сына ровно в два раза.") #5
else: #6
while father_age != 2 * son_age: #7
father_age += 0.1 #8
son_age += 0.1 #9
years_passed += 0.1 #10
if father_age == 2 * son_age: #11
print(f"Через {years_passed} лет отец будет вдвое старше сына.") #12
1) если указать целые числа - все ок
2) если указать нецелые значение, чтобы отец уже не мог быть старше сына ровно в два раза (например, 60.4 и 40.1) - все ок
Собственно в чем не работает:
3) если указать нецелые значения, чтобы запустился цикл (например, 20.5 и 1.5), код не стартует.
Указывал years_passed = float - выдает ошибку "TypeError: unsupported operand type(s) for +=: 'type' and 'float'" (в силу отсутствия знаний не знаю в чем дело).
ChatGPT указал, что нужно указать years_passed =
0.0, а не years_passed =
0 - не помогло.