Как решить подобную задачу на Python? Достаточно просто алгоритм.
Сама задача вот:
Даны два числа: a и b (вводятся в десятичной системе счисления). Найдите значение числа a/b, записанного в k-ичной системе счисления. Если a/b — периодическая дробь, то период следует заключить в скобки.
Пример входных данных:
1 2 8
1 12 10
Пример выходных данных:
0.4
0.08(3)

21 Авг 2019 в 06:11
172 +1
0
Ответы
1

Для решения данной задачи можно воспользоваться следующим алгоритмом на Python:

def divide_decimal_to_k(a, b, k):
integer_part = str(a // b)
fraction_part = []
remainders = []
a %= b
while a != 0 and a not in remainders:
remainders.append(a)
a *= k
fraction_part.append(str(a // b))
a %= b
if a != 0:
period_start = remainders.index(a)
fraction_part = fraction_partperiod_start + '(' + fraction_partperiod_start + [')']
result = integer_part + '.' + ''.join(fraction_part)
return result
a, b, k = map(int, input().split())
result = divide_decimal_to_k(a, b, k)
print(result)

Примеры использования:

Введите: 1 2 8
Вывод: 0.4
Введите: 1 12 10
Вывод: 0.08(3)

Этот алгоритм сначала вычисляет целую часть от деления, затем начинает вычислять дробную часть, при необходимости заключает период в скобки.

20 Апр 2024 в 13:22
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир