1

base-14 で与えられた (3AC)。BASE-7に変換します。

簡単なアプローチは、最初に 3AC を BASE-10 に変換し、次に BASE-7 に変換して 2105 にすることです。

BASE-14 から BASE-7 に直接変換する方法はあるのでしょうか?

4

4 に答える 4

2

私は1つのアプローチを見つけました。

基数10、次に基数7を計算する必要はありません。この式を使用して計算できます。Xが基数14でX=a a(n-1)a(n-2).... a(0)として表されている場合

次に、ベース7では次のように記述できます。

X = ..... rqp

ここで、
p =(2 ^ 0)a(0)%7;
q =((2 ^ 1)a(1)+ p / 7)%7
r =((2 ^ 2)a(2)+ q / 7)%7

..........
n番目の項=((2 ^ n)a(n)+(n-1)th term / 7)%7
(ベース14の番号はベース7でより多くの桁を必要とするため、さらに進みます)。

論理は単純で、塩基の特性に基づいており、7が14の半分であるという事実を考慮に入れています。そうでなければ、退屈な作業でした。

例えば。ここでは3ACが与えられています。
C = 12;
したがって、最後の桁は(2 ^ 0 * 12)%7 = 5
A = 10
次の桁は(2 ^ 1 * 10 + 12/7)%7 =(20 + 1)%7 = 21%7=0
次は3;
次の桁は(2 ^ 2 * 3 + 21/7)%7 =(12 + 3)%7 = 15%7 = 1
次は何もありません(0);
次の桁は(2 ^ 3 * 0 + 15/7)%7 =(0 + 2)%7 = 2%7 = 2

したがって、ベース7の数値は2105になります。この方法は混乱を招き、難しいように思われるかもしれませんが、少し練習すれば、同様のタイプの問題を解決するのに非常に便利です。また、287AC23B362のように数値が非常に長い場合でも、少なくとも時間がかかる可能性のある基数10を不必要に見つけて、基数7を直接計算する必要はありません。

于 2012-06-22T00:24:21.660 に答える
1

いいえ、14 は 7 の累乗ではないため、思い通りにする簡単な方法はありません。

このようなものについて私が知っている唯一のトリック (たとえば、16 進数から 2 進数に簡単に移行する) では、一方の基数が他方の基数になる必要があります。

于 2012-06-10T17:30:57.880 に答える
0

http://mathforum.org/library/drmath/view/55783.htmlは、妥当で明確な答えを提供します。要するに、私が知っている方法からは少し面倒です。

于 2012-06-10T17:25:58.533 に答える