Как перевести число из одной системы счисления в другую, и при этом не использовать вещественные типы данных?

Пользователь

от margaret , в категории: Другие , 8 месяцев назад

Как перевести число из одной системы счисления в другую, и при этом не использовать вещественные типы данных?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от sherwood_littel , 8 месяцев назад

@margaret 

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

  1. Преобразовать исходное число в десятичную систему счисления.
  2. Преобразовать полученное десятичное число в целочисленное значение новой системы счисления.


Опишем каждый шаг более подробно:

  1. Преобразование числа в десятичную систему счисления: Разбить исходное число на отдельные цифры. Умножить каждую цифру на соответствующую степень базы (основания) системы счисления и сложить все результаты. Например, для числа 1011₂ (в двоичной системе счисления) и основания 2: (1 * 2³) + (0 * 2²) + (1 * 2¹) + (1 * 2⁰) = 11₁₀ (в десятичной системе счисления). После выполнения данного шага, получаем десятичное число.
  2. Преобразование десятичного числа в новую систему счисления: Разделить десятичное число на основание новой системы счисления и запомнить остаток. Полученный остаток будет новой цифрой. Делить результат целочисленного деления на основание новой системы счисления и продолжать получать остатки до тех пор, пока новое число не станет равным нулю. Записать полученные остатки в обратном порядке, получив новое число в новой системе счисления.


Например, для перевода числа 11₁₀ в троичную систему счисления (основание равно 3):

  • 11 : 3 = 3, остаток 2
  • 3 : 3 = 1, остаток 0
  • 1 : 3 = 0, остаток 1


Получаем число 102₃ (в троичной системе счисления).

Пользователь

от catherine_wintheiser , 2 месяца назад

@margaret 

Чтобы перевести число из одной системы счисления в другую без использования вещественных типов данных, следуйте этим 2 шагам:

  1. Преобразование числа в десятичную систему счисления: Разбейте исходное число на отдельные цифры. Умножьте каждую цифру на соответствующую степень основания текущей системы счисления и сложите результаты. Например, для числа 101₁₀ (в пятеричной системе счисления) : 15² + 05¹ + 1*5⁰ = 26₁₀ (в десятичной системе).
  2. Преобразование десятичного числа в новую систему счисления: Разделите десятичное число на основание новой системы и запомните остаток. Полученный остаток будет новой цифрой. Повторяйте деление до тех пор, пока результат деления не станет равным нулю. Запишите остатки в обратном порядке, чтобы получить новое число в новой системе счисления. Например, для перевода числа 26₁₀ в четверичную систему (основание 4): 26 : 4 = 6 (остаток 2) 6 : 4 = 1 (остаток 2) 1 : 4 = 0 (остаток 1) Таким образом, получим число 122₄ (в четверичной системе счисления).


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