2014-10-07 2 views
-4

Мне нужно использовать цикл «для», чтобы рассчитать калории с пользовательского ввода. Все основано на входных данных, за исключением скорости, с которой сжигаются калории. (3,4) в минуту.Мне нужно написать программу на Python, чтобы вычислить калории, сжигаемые при выполнении операции

Это то, что у меня есть до сих пор. Я получаю правильный ответ, но он бесконечно повторяет цикл.

time = int(input('How many minutes were you exercising? ')) 

for i in range (time): 
    calories = (time * 3.4) 
    calories = float(calories) 
    print(calories) 
+1

Это не повторяет цикл бесконечно, оно повторяет цикл «время». Если вы введете 3, вы получите 3 петли. Итак, если это ваша фактическая проблема, это не ваш фактический код. Пожалуйста, убедитесь, что мы [минимальный, полный, проверяемый пример] (http://stackoverflow.com/help/mcve), который на самом деле демонстрирует проблему, которую вы хотите решить. – abarnert

+0

Кроме того, это домашнее задание или упражнение в книге? Если да, дайте нам более подробную информацию о назначении, потому что, вероятно, будет очевидно, что вы пропустили. Если нет, то почему вы считаете, что вам нужен цикл 'for'? – abarnert

+0

Не помещайте важную информацию в комментарий, редактируйте свой вопрос. – abarnert

ответ

0

Вы можете накапливать количество калорий за каждую минуту.

time = int(input('How many minutes were you exercising? ')) 

calories = 0 
for i in range(time): 
    calories += 3.4 

print('You burned {} calories'.format(calories)) 
1

Вам не нужен цикл; умножение, что вы уже делаете это все, что требуется:

time = int(input('How many minutes were you exercising? ')) 
calories = time * 3.4 
print(calories) 

Я также удаляла calories = float(calories), так как это излишним (при Умножая int на float, вы получите float).

P.S. Если использование цикла for является требованием для этого задания, подумайте о том, что означает умножение двух чисел вместе.

Смежные вопросы