Как вывести все комбинации покупок за заданную сумму?
До меня не доходит как эту задачу решить
Вкратце: у фермера есть 100 т.р., он хочет купить скот. Какого количества и какого скота он может купить на эти деньги? Стоимость: бык 10 т.р., корова 5 т.р., теленок 500 руб.
Вариантов тут масса. Я не понимаю как вывести их все. Например, он может купить 9 быков, 1 корову и 10 телят. Как это вывести в принт?
Я сделал так. Но это выводит только 3 из возможных вариантов:
b = 10000 # бык
k = 5000 # корова
t = 500 # теленок
s = 100000 # общая сумма
def prog(x, y, i, z):
return x / y, x / i, x / z
print(prog(s, b, k, t))
Но это явно что-то не то...
Ответы (2 шт):
Автор решения: TimAnt
→ Ссылка
b = 10000 # бык
k = 5000 # корова
t = 500 # теленок
s = 100000 # общая сумма
print(f"Быков: {s/b}, Коров: {s/k}, Телят: {s/t}")
Как-то так
Автор решения: Harry
→ Ссылка
Так сойдет?
b = 10000 # бык
k = 5000 # корова
t = 500 # теленок
s = 100000 # общая сумма
for ib in range(0,s//b+1):
ns = s - ib * b
for ik in range(0,ns//k+1):
nns = ns - ik * k
it = nns//t
print("Быки: ", ib, " Коровы: ", ik, " Телята: ", it)