Присоединиться

11 класс·высокий уровень

Строится восьмеричная запись числа N.2. Далее эта запись обрабатывается

Условие

На вход алгоритма подаётся натуральное число N>20N > 20 Алгоритм строит по нему новое число R следующим образом.1. Строится восьмеричная запись числа N.2. Далее эта запись обрабатывается по следующему правилу:— если число N делится на 7, то к восьмеричной записи числа справа дописываются его последние две цифры;— если число N не делится на 7, то остаток от деления числа N на 7 умножается на семь, а затем полученный результат в восьмеричном виде приписывается слева к восьмеричной записи.

Полученная таким образом запись является восьмеричной записью искомого числа R.Например, для исходного числа 21₁₀ = 25₈ результатом является число 2525₈ = 1365₁₀, для исходного числа 22₁₀ = 26₈ результатом является число 726₈ = 470₁₀.Укажите такое число N, для которого число R является наименьшим среди чисел, превышающих 500. В ответе это число запишите в десятичной системе счисления.В ответе запишите это число в десятичной системе счисления.

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. Приведём решение на языке Python.otv = c = 10**10for n in range(20,2000): s = oct(n)[2:] if n%7==0: s = s + s[-2:] else: s = oct((n%7)7)[2:] + s r = int(s,8) if r > 500 and c > r: otv = n c = rprint(otv) Приведём другое решение на языке Python.f = lambda n: oct(7v)[2:] + oct(n)[2:] if (v:=n%7) else (t:=oct(n)[2:]) + t[-2:]spi = sorted([(v, n) for n in range(21,

Осталось ещё 4 шага

  1. if (v:=int(f(n), 8)) > 500])print(spi[0][1])…

  2. Приведём решение Сергея Донец на…

  3. + t;var r := Dec(t, 8);if (r >…

  4. and (r < minR) thenbeginminR := r;bestN :=…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Анализ и построение алгоритмов для исполнителей»

Строится восьмеричная запись числа N.2. Далее эта запись обрабатывается — решение с объяснением | Lom Ai