[hackeroid] B1:4 Атака Дракона.

Обратное действие, перевод из десятичной системы счисления в произвольную, мы называем Атакой Дракона: Y_10->X_n. Это действие обычно выполняется, когда мы хотим ввести информацию внутрь компьютера. Мы живем в десятичном мире, а компьютер -- в каком-нибудь шестнадцатеричным. И для того, чтобы ввести что-нибудь наше в его мир, "Атаковать", нам придется перевести это в чужую систему счисления.

Тут надо уметь делить. :-) Переведем числа, полученные при Укрощении Дракона, обратно, в "родные" системы счисления, последовательно деля их на основание, пока не получится число, меньшее самого основания. Это число столбиком уже не разделишь. :-)

   48 |  3              127797|  22
  -3  +-----+          -110   +------+
  --  |  16 |  3        ---   |  5808|  22
   18   -15 +----+       177    -44  +------+
  -18    -- |  5 |  3   -176     --  |  264 |  22
   --     1   -3 +----   ---     140   -22  +----
    0         -- |  1      197  -132    --  |  12=C
               2          -176   ---     44
                           ---    88    -44
                            21=L -88     --
                                  --      0
                                   0

Результат считывается из последнего частного и остатков, собираемых в обратном порядке. Так в первом случае получаем 1210_3, а во втором -- C00L_22.

Попробуйте перевести числа, получившиеся при самостоятельной практике Укрощения, обратно, в их исходные системы счисления. Попробуйте несколько десятичных чисел перевести во всякие странные системы счисления и обратно.

>>>

Если вы умеете хорошо делить в уме (или используете калькулятор), то удобнее использовать другую запись:

   48|0  127797|21=L
   16|1    5808| 0
    5|2     264| 0
    1|       12=C

Здесь при каждом делении остаток записывается справа от черты, а частное -- внизу. Как всегда, при Атаке ответ считывается в обратном порядке -- снизу вверх.

Составьте программу, выполняющую автоматический перевод в любую систему счисления.

<<<

<<<B1:4 EOF>>>



E-mail: hscool@netclub.ru
Hosted by uCoz