Python Вводятся два целых значения a, b – катеты прямоугольного треугольника. Необходимо найти его периметр. Результат вывести на экран.

В некоторой стране используются денежные купюры достоинством в 1, 2, 4, 8, 16, 32 и 64. Вводится натуральное число n. Как наименьшим количеством таких денежных купюр можно выплатить сумму n? Вывести на экран список купюр для формирования суммы n. Предполагается, что имеется достаточно большое количество купюр всех достоинств.

Dimoo9n Dimoo9n    2   08.12.2021 17:03    6

Ответы
dias1101 dias1101  26.01.2022 15:04

1)

a = int(input())

b = int(input())

c = (a**2+b**2)**0.5

print(f'Периметр равен: {a+b+c}')

2)

n = int(input())

lst = [64, 32, 16, 8, 4, 2, 1]

ans = []

while n>0:

 for i in lst:

   if n >= i:

     n -= i

     ans.append(i)

     break  

 

print(f'Понадобится {len(ans)}шт. купюр, а именно:')

print(*ans)

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика