From 5fd61b66030a415c7b56ebe8d711118f303424d7 Mon Sep 17 00:00:00 2001 From: Zver Date: Wed, 3 Dec 2025 11:43:24 +0500 Subject: [PATCH] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=2020=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lesson.20.py | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 lesson.20.py diff --git a/lesson.20.py b/lesson.20.py new file mode 100644 index 0000000..efa342d --- /dev/null +++ b/lesson.20.py @@ -0,0 +1,49 @@ +''' ****** Задание 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) \ No newline at end of file