Условия задачи:
Среднее количество шагов. Браслет для занятий спортом - это носимое устройство, которое отслеживает вашу физическую активность, количество сожженных калорий, сердечный ритм, модели сна и т. д. Одним из самых распространенных видов физический активности, который отслеживает большинство таких устройств, является количество шагов, которые вы делаете каждый день. Среди исходного кода главы 6 вы найдете файл steps.txt. Этот файл содержит количество шагов, которые человек делал каждый день в течение года. В файле 365 строк, и каждая строка содержит количество шагов, сделанных в течение дня. (Первая строка -это число шагов, сделанных 1 января, вторая строка- число шагов, сделанных 2 января, и т. д.)
Напишите программу, которая читает файл и затем выводит среднее количество шагов, сделанных в течение каждого месяца. (Данные были записаны в год, который не был високосным, и поэтому февраль имеет 28 дней.)
Решение задачи:
def main():
MONTH = 12
# 30 дней в апрель, июнь, сентябрь и ноябрь это 4, 6 , 9, 11 месяцы
# в феврале 28 дней это 2 месяц
# в остальных месяцах 31 день
#Решение запускаем внешний цикл, который состоит из 12 итераций - по числу месяцев,
# после сразу определяем переменную накопитль которая будет обнуляться после каждого
# внутренного цикла далее управляющие структуры проверяют какой это месяц, если второй
# то внутренний цикл из 28 итераций, если один из где 30 дней то цикл из 30 итерации
# остальные из 31 итерации.
with open('steps.txt', 'r') as in_file:
for i in range(1, MONTH+1):
totall = 0
if i == 2:
for c in range(1, 29):
value = in_file.readline()
totall += int(value)
print(f' Среднее количество шагов в {i} месяце {totall/28:.2f}')
elif i == 4 or i == 6 or i == 9 or i == 11:
for c in range(1, 31):
value = in_file.readline()
totall += int(value)
print(f' Среднее количество шагов в {i} месяце {totall/30:.2f}')
else:
for c in range(1, 32):
value = in_file.readline()
totall += int(value)
print(f' Среднее количество шагов в {i} месяце {totall/31:.2f}')
main()