Перевести число 1100101101001 из 1100101101001-ой системы в 1100101101001-ую
Задача: перевести число 1100101101001 из 1100101101001-ой в 1100101101001-ую систему счисления.
Для перевода 1100101101001 из 1100101101001-ой в 1100101101001-ую систему счисления, воспользуемся следующим алгоритмом:
- Переведем число 1100101101001 из 1100101101001-ой системы в десятичную;
- Полученное число переведём из десятичной системы в 1100101101001-ую;
Решение:
1. Для перевода числа 1100101101001 в десятичную систему воспользуемся формулой:
An = an-1 ∙ qn-1 + an-2 ∙ qn-2 + ∙∙∙ + a0 ∙ q0
Отсюда:
11001011010011100101101001=1 ∙ 110010110100112 + 1 ∙ 110010110100111 + 0 ∙ 110010110100110 + 0 ∙ 11001011010019 + 1 ∙ 11001011010018 + 0 ∙ 11001011010017 + 1 ∙ 11001011010016 + 1 ∙ 11001011010015 + 0 ∙ 11001011010014 + 1 ∙ 11001011010013 + 0 ∙ 11001011010012 + 0 ∙ 11001011010011 + 1 ∙ 11001011010010 = 1 ∙ 3.1418915624896E+144 + 1 ∙ 2.8560025616107E+132 + 0 ∙ 2.5961273550331E+120 + 0 ∙ 2.3598988789947E+108 + 1 ∙ 2.145165455109E+96 + 0 ∙ 1.9499711918814E+84 + 1 ∙ 1.7725381695438E+72 + 1 ∙ 1.6112502459373E+60 + 0 ∙ 1.4646383359413E+48 + 1 ∙ 1.3313670303653E+36 + 0 ∙ 1.2102224324236E+24 + 0 ∙ 1100101101001 + 1 ∙ 1 = 3.1418915624896E+144 + 2.8560025616107E+132 + 0 + 0 + 2.145165455109E+96 + 0 + 1.7725381695438E+72 + 1.6112502459373E+60 + 0 + 1.3313670303653E+36 + 0 + 0 + 1 = 3.1418915624925E+14410
Таким образом:
11001011010011100101101001 = 3.1418915624925E+14410
2. Полученное число 3.1418915624925E+144 переведем из десятичной системы счисления в 1100101101001-ую. Т.к. полученное число содержит дробную часть, нам потребуется перевести вначале целую часть, а затем дробную. Таким образом необходимо:
- Перевести 0 в 1100101101001-ую систему;
- Перевести 0.1418915624925E+144 в 1100101101001-ую систему;
2.1 Для того, чтобы перевести число 0 из десятичной системы счисления в 1100101101001-ую, необходимо осуществить последовательное деление на 1100101101001, до тех пор пока остаток не будет меньше чем 1100101101001.
0 | |
Полученные остатки записываем в обратном порядке, таким образом:
010=01100101101001
2.2 Для перевода десятичной дроби 0.1418915624925E+144 в 1100101101001-ую систему, необходимо выполнить последовательное умножение дроби на 1100101101001, до тех пор, пока дробная часть не станет равной 0 или пока не будет достигнута заданная точность вычисления. Получаем:
0.1418915624925E+144 ∙ 1100101101001 = 1.5609506412075E+155 (0)
0.5609506412075E+155 ∙ 1100101101001 = 6.1710241799959E+166 (0)
0.1710241799959E+166 ∙ 1100101101001 = 1.8814388871128E+177 (0)
0.8814388871128E+177 ∙ 1100101101001 = 9.6967189017789E+188 (0)
0.6967189017789E+188 ∙ 1100101101001 = 7.6646123093518E+199 (0)
0.6646123093518E+199 ∙ 1100101101001 = 7.3114073325673E+210 (0)
0.3114073325673E+210 ∙ 1100101101001 = 3.4257954941707E+221 (0)
0.4257954941707E+221 ∙ 1100101101001 = 4.6841809193845E+232 (0)
0.6841809193845E+232 ∙ 1100101101001 = 7.5266818269876E+243 (0)
0.5266818269876E+243 ∙ 1100101101001 = 5.7940325774628E+254 (0)
0.7940325774628E+254 ∙ 1100101101001 = 8.7351611269749E+265 (0)
Ответом станет прямая последовательность целых частей произведения. Т.е.
0.1418915624925E+14410=0.000000000001100101101001
2.3. Осталось соединить переведенные части, таким образом:
3.1418915624925E+14410=0.000000000001100101101001
Ответ: 11001011010011100101101001 = 0.000000000001100101101001.