project_python.2.4/lesson.20.py

49 lines
1.5 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

''' ****** Задание 20 из 20 Параграф 2.4 *********
* Виталий Евгеньевич задумался:
А какая система счисления — самая выгодная?
По его логике, выгодной считается та система счисления, в которой сумма цифр числа — наибольшая.
А если таких систем несколько — он выбирает наименьшее основание из них.
Ваша задача — помочь ему это выяснить!
Формат ввода
Одно натурально число.
Формат вывода
Одно натуральное число из диапазона [2;10] — основание системы счисления с максимальной выгодой.
Если таких оснований несколько, выбирается наименьшее.
Пример 1
Ввод
12
Вывод
7
'''
if __name__ == "__main__":
decimal_number = int(input())
max_sum_digits = 0
best_base = 2
for base in range(2, 11):
temp_number = decimal_number
current_sum_digits = 0
if temp_number == 0:
current_sum_digits = 0
else:
while temp_number > 0:
current_sum_digits += temp_number % base
temp_number //= base
if current_sum_digits > max_sum_digits:
max_sum_digits = current_sum_digits
best_base = base
print(best_base)