Найти - Пользователи
Полная версия: Помогите найти причину некорректной работы кода
Начало » Python для новичков » Помогите найти причину некорректной работы кода
1 2 3
Euler
Euler
print([x//64]+list(bin(x%64)[2:]))
Хотя я уверен, что препод рассчитывает увидеть такое решение:
x = int(input())
nominals = [1, 2, 4, 8, 16, 32, 64]
nominals.sort(reverse=True)
for nominal in nominals:
	print(x//nominal, 'купюр номиналом', nominal)
	x %= nominal
это явно задача на цикл for-in.
Denis_Yakovenko
Euler
ого, выглядит намного красивее, спасибо большое!

Не могли бы Вы немного разъяснить смысл кода? В частности, эту строку:
Euler
nominals.sort(reverse=True)
И еще, принцип перебора номиналов в цицле for
Euler
Denis_Yakovenko
В частности, эту строку:
сортировка от большего к меньшему.
Denis_Yakovenko
И еще, принцип перебора номиналов в цицле for
Это должно быть интуитивно понятно, тело цикла вызывается последовательно для каждого элемента списка.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB