Подсчет стоимости по траченой воды и нахождение наибольшего количество по цене и и наименьшего
Всем привет нужна помощь в решении задачки:
1) пользователь вводит количество потраченных кубометров воды за 12 месяц и стоимость 1 кубометра
2) скрипт выводит стоимость за каждый месяц
3) после чего наибольшее количество по цене и и наименьшее
Пункт 1 я сделал скрипт предоставляю ниже.
P.S - нужна помощь в решении 2 и 3 пункта. Формула расчета стоимости кубометра я так понимаю вот такая (введенный кубометр * на введенную стоимость - например "23 * 19.88")
Скрипт:
print("Выберите один из пуктов меню:")
print("1 - расчет стоимости потраченой воды за весь год (по каждому месяцу.)")
print("2 - расчет стоимости потраченой воды за определенные месяца.")
print('')
menu = int(input("Сделайте свой выбор: "))
while menu < 1 or menu > 2:
print("Вы выбрали пункт меню № {0} - он не существующий в этом пространсвенном мире".format(str(menu)))
print('')
menu = int(input("Сделайте свой выбор: "))
if menu == 1:
print("Вы выбрали пункт № {0}".format(str(menu)))
print('')
arr_cubic_meter = []
arr_cubic_meter_cost = []
cubic_meter = 3
cubic_meter_cost = 3
count_month = 0
count_cost = 0
print('Вод кубометра воды за 12 месяцев')
print('')
for i in arr_cubic_meter:
count_month += 1
arr_cubic_meter.append(int(input("Введите использованный кубометр воды за {0}-вый месяц: ".format(str(count_month)))))
print('')
print('Вод стоимости одного кубометра воды за 12 месяцев')
print('')
for j in arr_cubic_meter:
count_cost += 1
arr_cubic_meter_cost.append(float(input("Введите стоимость одного кубометра воды за {0}-вый месяц: ".format(str(count_cost)))))
elif menu == 2:
print('')
month_selection = int(input("За сколько месяцев вы хотите сделать расчет потраченой воды?: "))
while month_selection < 1 or month_selection > 12:
print('')
print("Такого месяца в календре не существует!!! Попробуйте снова =)")
print('')
month_selection = int(input("За сколько месяцев вы хотите сделать расчет потраченой воды?: "))
arr_cubic_meter = []
arr_cubic_meter_cost = []
cubic_meter = month_selection
cubic_meter_cost = month_selection
count_month = 0
count_cost = 0
print('')
print("Вод кубометра воды за {0} месяцев".format(str(month_selection)))
print('')
for i in range(cubic_meter):
count_month += 1
arr_cubic_meter.append(
int(input("Введите использованный кубометр воды за {0}-вый месяц: ".format(str(count_month)))))
print('')
print("Вод стоимости одного кубометра воды за {0} месяцев".format(str(month_selection)))
print('')
for j in range(cubic_meter_cost):
count_cost += 1
arr_cubic_meter_cost.append(
float(input("Введите стоимость одного кубометра воды за {0}-вый месяц: ".format(str(count_cost)))))
Ответы (1 шт):
На счёт
Пункт 1 я сделал ...
Ваш код никак не будет работать. Достаточно взглянуть на эти две строчки:
arr_cubic_meter = []
for i in arr_cubic_meter:
...
Вот необходимый функционал, надеюсь по пунктам сами раскидать сможете.
cms = [int(input('Введите количество использованных кубометров воды за {0} месяц: '.format(i+1))) for i in range(12)]
cmc = [float(input('Введите стоимость одного кубометра воды за {0} месяц: '.format(i+1))) for i in range(12)]
c = float(input('Введите стоимость одного кубометра при оплате за год: '))
print('Затраты по месяцам (при оплате кубометра воды за каждый месяц)')
for i in range(12):
print('За %s месяц потрачено %s' % (i+1, cmc[i]*cms[i]))
cbmc = sum([cms[i]*cmc[i] for i in range(12)])
print('За весь год потрачено (учитывая стоимость кубометра воды за каждый месяц): %s' % cbmc)
cbyc = sum([cms[i]*c for i in range(12)])
print('За весь год потрачено (учитывая стоимость кубометра воды при оплате за год): %s' % cbyc)
print(['Выгоднее платить за каждый месяц отдельно','Выгоднее платить сразу за год'][cbmc > cbyc])
И на будущее, постарайтесь не использовать мат на stackoverflow.