MarinaDonut648
30.08.2022 23:17

Петя и Вася придумали секретный алгоритм, с которого можно шифровать числа. Результат
(R) шифрования числа N строится следующим образом:
Шаг 1. Начальное значение результата R установить равным остатку от деления числа N на 6.
Шаг 2. Заменить число N на результат деления числа N на 6 нацело без остатка.
Шаг 3. Если на шаге 2 получился 0, закончить работу алгоритма.
Шаг 4. Если в записи результата R чётное число знаков, приписать к результату слева остаток от
деления числа N на 6, иначе приписать к результату справа остаток от деления числа N на 6.
Шаг 5. Перейти к шагу 2.
Например, число 20 кодируется как 23.
Вася получил от Пети зашифрованное число 432.
Какое число N зашифровал Петя?

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
marinagrizhuk
07.06.2020 07:57
Public static double CosineBetweenVectors(double[] a, double[] b)
        {
            if (a.Length != b.Length || a.Length == 0) throw new Exception("не верные параметры");

            double ab = 0;
            double a_length = 0;
            double b_length = 0;
            for (var i = 0; i < a.Length; i++)
            {
                ab += a[i] * b[i];
                a_length = a[i] * a[i];
                b_length = b[i] * b[i];
            }

            if (a_length * b_length == 0) throw new Exception("Нулевые вектора");

            return ab / Math.Sqrt(a_length) / Math.Sqrt(b_length);
        }
0,0(0 оценок)
Ответ:
аноним0000001
29.03.2023 14:48

"...напечатает сначала 2, потом - 6" -- это значит a=2 и b=6?


про пятеричные записи ничего не понял...  :) И ИМХО к чему такие сложности? И для чего нам комп и программа? Я подправил исходную прогу чтобы она выдавала все числа подходящие по условию

var x,a,b: longint;


begin

   for var i := 999 DownTo 100 do begin

       a := 0;

       b := 1;

       x := i;

       while x>0 do begin

           if x mod 2 > 0 then a := a+1 else b := b+(x mod 5);

           x := x div 5;

       end;

       if (a = 2) and (b = 6) then writeln('x = ', i, ' a = ', a, ' b = ',b);

   end;

end.


прога проводит расчет для всх трехзначных чисел от 999 до 100

итого мы видим что максимальное подходящее число это 960

при необходимости прогу можно переделать чтобы она находила только максимальное число.

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота