-2

10進数を他の数値システムに変換するための非常に優れたアルゴリズムに出くわしました。プログラムは、変換する数値とベースの2つの入力を要求します。出力は、必要なベースの数値です。8進数を選択した底に変換する単一のアルゴリズムが可能かどうか疑問に思っていますか?

4

1 に答える 1

1

もちろん可能です。任意の基数の任意の数は、他の任意の基数で書き込むことができます。たとえば、基数8を基数2に変換するのは非常に簡単です。後ろから1つずつ移動し、長さ3を使用して基数2に各数値を書き込みます(これは8 = 2 ^ 3であるため機能します)。

              0o1234 
    1 > 001
    2 >    010
    3 >       011
    4 >          100
      0b001010011100

基数10から他の基数への変換に使用するのと同じアルゴリズムを基数8に簡単に変更できるに違いありません。

于 2012-04-17T16:05:19.820 に答える