プロが教えるわが家の防犯対策術!

数学の質問です。

例えば18の約数を調べる際、18と言う数は小さいので特に頭で考えなくても、
1、2、3、6、9、18と分かります。
しかし645とか1230(適当に設定しました)とかの3桁を超えるような大きい数字の約数を調べる際はどのような方法で調べていくのでしょうか?
御回答お待ちしてます。

A 回答 (8件)

例を挙げたほうがわかりやすい


645
 一目見て 5で割れることはわかる。・・・1の位が0か5
5)645
 129

129も一目見て3で割れることがわかる・・・1 + 2 + 9 = 12 が3の倍数
3) 129
  43
43は、素数 6×6 = 36 、7×7=49 6や7で割り切れない
★今まで計算してきた数、ここでは5より大きい数をチェックする。6× 6 = 36、7×7= 49・・49>43なのでこれ以上大きな数は調べなくてよい。

1230
 一目見て 5で割れる
5) 1230
  246

246
 一目みて、3で割れる
3) 246
  82

82
 一目見て2で割れる・・・1の位が偶数
2) 82
  41

よって、645 = 3×5×43、1230=2×3×5×41
偶然に素数は一個ずつしかないので、
約数の数は、
645は、1と645を除いて、₃C₁ + ₃C₂ = 6通り
1230は、1と1230を除いて、₄C₁ + ₄C₂ + ₄C₃ = 4 + 6 + 4 = 14通り
約数が重複するときは指数で計算すると楽
約数 - Wikipedia( https://ja.wikipedia.org/wiki/%E7%B4%84%E6%95%B0 … )

結局、コツコツと数えるには代わりないが、9桁(999999999)でも、√(10¹⁰) = 31622 までの素数を調べればよい・・・とはいっても、それまでに割れる数が見つかれば急激に調べる個数は少なくなる。
 例えば、111111だと
3で割れるので37037
 これは、7で割れるので5291
  これは、11で割れるので、481  11²=121<481 なので後少し
   これは、13で割れるので、37  13²=169 >37 なのでこれ以上は計算しなくてよい
    • good
    • 1

まずは1の位を見ますかね。


5なら5の倍数だし、0なら10の倍数。偶数なら2の倍数です。
645なら6+4+5、1230なら1+2+3+0を計算して、それが3の倍数なら、元の数字も3の倍数です。
そうやって素因数分解していきます。
ただ、221とか1219は気がつかないだろうと思います。
221だと、15×15=225ですから、約数があるとすれば、15より小さい物があるはずだ、と考えて、15より小さい素数で割ってみます。
    • good
    • 0

素因数分解を利用するの補足。


約数は順番に拾うしかないので、自分の好きな方法でみなさん求めていると思います。


645の場合   3×5×43=645
約数の個数は指数に1を加えた数を掛けたものです
(1+1)×(1+1)×(1+1)=8個


さて、この8個を拾う方法は

 3)645
 5)215
    43
まず1と645、3、5,215、43を拾います
次に43の相方は上のはしご算の割る数を拾って掛けたもの3×5、つまり15
最後に一番下のはしごの数を(この場合は41)、残りの掛け合わせていない3と掛けます 3×43=129
1、3、5、15、43、129、215、645 計8個です。



1230の場合    2×3×5×41=1230
指数は1、1、1、1、なので約数の個数は
(1+1)×(1+1)×(1+1)×(1+1)=16個

16個を拾う方法は

3)1230
5) 410
2)  82
    41
まず1、2、3、5、41、82、410、1230を拾い、

41の相方は上のはしごの 2×5×3=30

82の相方は上のはしごの 3×5=15

次にに掛け合わせていない数同士を掛けます。
41×5=205、41×3=123、41×3×5=615、41×2×3=246

最後にはしごの割る数、2、5、3で掛け合わせていないものも掛けます 2×5=10、2×3=6

1、2、3、5、6、10、15、30、41、82、123、205、246、410、615、1230 計16個



もっと簡単なのは、素因数分解で割る順番を変えていく方法

3)1230
5) 410
2)  82
    41

割る順番を変えます
5)1230
2) 246
2) 123
3)  41

また割る順番を変えます
2)1230
3) 615
5) 205
    41
 
はしご算に現れたすべての数をまず拾って 1、2、3、5、41、82、123、205、246、410、615、1230  12個

はしごの割るほうの数同士で掛けます 2×3=6、2×5=10、2×3×5=30、3×5=15 4個


合計16個です。
    • good
    • 0

素因数分解を利用します

    • good
    • 0

順番に試していくしかないです。


与えられた数の約数を順番に試すことなく見つけられる方法は、(少なくとも今は)見つかっていません。
もし、こういう方法が見つかれば、インターネットで使われている暗号化技術の多くが無効化されることになります。
あるいは、最近話題のビットコインを自由に無限に作り出して大金持ちになることもできます。
    • good
    • 0

√(645)≒25.4 だから、25以下の


素数で割れるかどうか、考えればよい。

2, 3, 5, 7, 9, 11, 13, 17, 19, 23

試すのはこれだけです。

同様に

√(1230)≒35.1

試すのは

2, 3, 5, 7, 9, 11, 13, 17, 19, 23、29、31

割って小さくなった数を更に割るのにも
同じ手法が使えます。
    • good
    • 0

√645とか√1230を大雑把に求める。


√645≒26 √1230≒36
26までや36までの素数で割ってみる。
割り切れた数を書き出す。商に対して同じ事を繰り返す。割り切れなくなったら終わり。
書き出した数を組み合わせて掛け算したものが約数

●645を例にとると
そこまでの素数は2,3,7,11,13,17,19,23,29
これで割ってみる

645 ÷ 3 商:215
215 ÷ 5 商:43
43 43は2,3,7,11,13,17,19,23,29で割れないので終わり。
約数は3,5,43
と3,5,43を組あわせて掛けた数3×5, 3×43, 5×43
1と自分も含めると約数は1, 3, 5, 15, 129, 215, 645

●1230を例にとると
そこまでの素数は2,3,7,11,13,17,19,23,29,31,
1230 ÷ 2 商:615
615 ÷ 3 商:205
205 ÷ 5 商:41
41 ここで終わり。

約数は1, 2, 3, 5, 41, 2×3, 2×5, 2×41, 3×5, 3×41, 5×41, 1230
=1,2,3,5,41,6,10,82,15,123,205,1230
    • good
    • 0

小生のやり方


1.偶数ならば2で割る。必ず割ることができる。
2.1の桁が0か5ならば5で割る。これも必ず割ることができる。
3.3か7で割ってみる。割り切れたら採用。
4.それでも11とか13、17、19等(いずれも素数)で割れることがあるのでこれも試みる。
5.以上を繰り返す。最後が素数になったら終了。

4.で素数は無限にあるのでどこまでするかは根気と努力(?)ということになりますが、元の数の半分まですれば十分です。素数は50ぐらいまでは覚えておくとよいですね。
これで余程意地悪な問題でない限りほぼ大丈夫です。

例 645は1の桁が5なので5で割ることができる。
  645÷5=129  129は3の倍数かな? 割ってみる。
  129÷3=43  3で割りきれた。43は素数なので終了。
つまり 645=5×3×43 となり、約数は5、3、43の3個。

3.で元の数が3で割れるかどうかは、各桁の数字を全部足して3の倍数になれば元の数は3の倍数。
  例 1230 → 1+2+3+0=6 6は3の倍数なので1230は3の倍数。
   これも知っておくと便利。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!