• ベストアンサー

2進数において、3の倍数になる規則は?

10進数では全ての桁の和が3の倍数になればいい では2進数において3の倍数になる規則はなんでしょうか。 逆に3進数において2の倍数になる規則はなんでしょうか。 後者は1の個数が偶数。 でいいですか? 前者についてはなかなか手法がみつかりません。。

質問者が選んだベストアンサー

  • ベストアンサー
  • ranx
  • ベストアンサー率24% (357/1463)
回答No.4

No.2です。 > 10^1 ≡ 10 ≡ -1 (mod 11) > の式に現れる数は全て2進表記ですよね? その通りです。 > 10^2 ≡ (10)^2 ≡100(4のこと)≡ 1(4を3で割るとあまりは1)  (mod 11) > と考えていいですか? その通りです。

anpankudasai
質問者

お礼

ありがとうございます。 これなら後々も応用できそうです! またよろしくおねがいします^^

その他の回答 (4)

noname#6587
noname#6587
回答No.5

フーン、初めて聞きました。知らなかった。 即席に考えた私の答え、、、 (既に回答している皆さんと同じことですが、、、、) 「10進数では全ての桁の和が3の倍数になればい」 --->    数字の並びが ABCの10進数は     (3*3+1)*(3*3+1)*A + (3*3+1)*B + C 一目瞭然。 「では2進数において3の倍数になる規則はなんでしょうか。」 ---> (同様の発想から云うと)   数字の並びが ABCの2進数は     (3-1)*(3-1)*A + (3-1)*B + C だから、A-B+C が 0 (か 3 の倍数?)。  (この場合は、011->3か110->6。)   ABCDについては、 (3-1)*(3*3-2*3+1)*A + (3-1)*(3-1)*B + (3-1)*C + D を見ると、-A+B-C+D が 0 (か 3 の倍数?)。 0011->3 0110->6 1001->9 1100->12 1111->15 (「・・か 3 の倍数」 が出てこないですね。) もっと長くても、見通せますね。 「逆に3進数において2の倍数になる規則はなんでしょうか。 」 -->    (2+1)*(2+1)*(2+1)*A + (2+1)*(2+1)*B + (2+1)*C + D だから、 A+B+C+D が ( 0 か ) 2の倍数。 検証は自分でやってみて!

anpankudasai
質問者

お礼

ありがとうございます。 私も初めてでした。 またよろしくおねがいします

  • massie
  • ベストアンサー率17% (46/265)
回答No.3

 結局#1さん、#2さんと同じことかもしれませんが・・・。          3で割ったときのあまり  1桁目=1・・・     1  2桁目=2・・・     2  3桁目=4・・・     1  4桁目=8・・・     2  5桁目=16・・・    1 という具合に奇数桁は3で割るとあまりが「1」偶数桁はあまりが「2」ということです。ということは奇数桁に数字(2進数ですからもちろん「1」)がある場合は「1」、偶数桁に数字がある場合は「2」をたしていき、その合計が3で割り切れるときは3の倍数というのはどうでしょうか。  1001001001111010111 奇数桁=7 偶数桁=4  2×4=8  7+8=15 なので3の倍数

anpankudasai
質問者

お礼

ありがとうございます。 なんとかわかってきました^^ またよろしくお願いします

  • ranx
  • ベストアンサー率24% (357/1463)
回答No.2

> 10進数では全ての桁の和が3の倍数になればいい と機械的に覚えていたのでは応用がききません。 なぜそうなのかを理解しておきましょう。 10^1≡1 (mod 3) であることが重要です。このため、 10^2≡1^2≡1 (mod 3) 一般に10^n≡1^n≡1 (mod 3) となるため、 a0 + a1・10 + a2・10^2 ・・・ + an・10^n ≡ a0 + a1 + a2 + ・・・ + an となるのです。 2進数では 10^1 ≡ 10 ≡ -1 (mod 11) 10^2 ≡ (-1)^2 ≡ 1 (mod 11) 一般に 10^n=10^(n-2)・10^2 ≡ 10^(n-2) (mod 11)ですから、 一桁おきに足し算と引き算を入れ換えるNo.1さんの方法で正解です。 3進数では 10^1 ≡ 1 (mod 2) ですので、10進数の場合の3の倍数と同じようになります。 つまり、各桁の数をすべて足し合わせた合計が2の倍数なら元の数も2の倍数です。

anpankudasai
質問者

お礼

ありがとうございます。 確認のためなんですが、modや2進表記に慣れていないので以下の点だけ質問させてください。 10^1 ≡ 10 ≡ -1 (mod 11) の式に現れる数は全て2進表記ですよね? かなり無意味なことですが、 10^2 ≡ (10)^2 ≡100(4のこと)≡ 1(4を3で割るとあまりは1)  (mod 11) と考えていいですか?

noname#6248
noname#6248
回答No.1

とっさに思いついたのであまり自信はありませんが… 例 1001010101010101010101011101101の場合 -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +の合計と-の合計を足し算します。 『その結果が3の倍数ならば3の倍数である』とは言えないですかね? +=13 -=4 13-4=9→3の倍数→1001010101010101010101011101101は三の倍数。 二進数→1,2,4,8,16,32,64,128,256…ですよね? 最寄の3の倍数を考えると 1→0 2→3 4→3 8→9 16→15 32→33 64→63 128→129 256→255 ■→□ ■と□を見ていくと、1減っている、1増えているが順になっているようです。 ■の部分の上下を比べると2倍しているわけですから… 1の時=1少なければ3の倍数ですね。 ・1少なければ3の倍数を2倍する→2少なければ3の倍数→1多ければ3の倍数 ・1多ければ3の倍数を2倍する→2多ければ3の倍数→1少なければ3の倍数 どうやら交互に出ているようです。数学的帰納法を簡素化したもの。 1少なければ3の倍数+1多ければ3の倍数=3の倍数 1少なければ3の倍数×3=3の倍数 1多ければば3の倍数×3=3の倍数 ですかね… 証明はしませんがおそらく正解かと思います。

anpankudasai
質問者

お礼

なるほど、ありがとうございます 10進数のように一筋縄ではいかないわけですね・・・ 頭が混乱しているのでまたあとでじっくり読み返したいと思います。

関連するQ&A

専門家に質問してみよう