Как преобразовать число из 8-го в 10-е?
Вопрос
Я знаю 75(основание 8) = 61(основание 10), но не могу легко найти формулу для этого.Как преобразовать систему счисления из 8-й в 10-ю?
Решение
Чтобы преобразовать любую базу в базу 10, просто выполните следующие действия:
Для каждой цифры в другом основании умножьте это на основание и цифру.Например:
75 (base 8) = 7*8^1 + 5*8^0 = 61
Работает на любой базе...двоичный, шестнадцатеричный, что угодно, просто сделайте это, и он преобразуется в базу 10.
Другие советы
0 * 85 + 0 * 84 + 0 * 83 + 0 * 82 + 7 * 81 + 5 * 80 = 61
Формула 18 = 110 и 108 = 810.Все остальное можно вывести из этого.
Если у вас есть последовательность цифр по основанию 8, которую вы хотите преобразовать в число по основанию 10, обработайте их слева направо, сохраняя инициализированную сумму равной нулю.Для каждой цифры x установите сумму 8*total+x.После обработки последней цифры общая сумма будет равна десятичной последовательности по основанию 8.
75 по основанию 8 = 5*8^0 + 7*8^1 = 5 + 56 = 61
В общем, чтобы преобразовать число a_1a_2a_3...a_n из основания k в основание 10, используйте формулу:
a_n*k^0 + a_(n-1)*k^1 + ...+ а_1*к^(n-1).
учитывая, что это сайт программирования:
int oct_to_dec = 075;
printf("%d",oct_to_dec);
137461(базис8) = 1 x 8^0 6 x 8^1 4 x 8^2 7 x 8^3 3 x 8^4 1 x 8^5