最大公約数

算数04
最小公倍数
最大公約数
素数
垂水共之
約数diviser・因数factor
• ある整数nを割り切れる整数をnの約数という
• 例 n=12の場合
– 12÷1=12
– 12÷2=6
– 12÷3=4
– 12÷4=3
– 12÷6=2
– 12÷12=1
12の約数は
1,2,3,4,6,12の6個
素数と合成数
• 素数の定義
– 1とその数自身でしか割り切れない
2以上の自然数
1は素数でない
– 個数
・ 合成数とは
- 素数でない数
• 無数にある
– 見つかっている最大の素数
• 257885161‐1=581887266・・・724285951
1742万5170桁
素数
• 50までの素数
– 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47
• 素数の見つけ方
– エラトステネスの篩(ふるい)
• メルセンヌ素数(Mersenne prime)
– メルセンヌ数
– 素数のメルセンヌ数
– 2p‐1が素数pも素数
2p‐1
21-1= 1
22-1= 3
23-1= 7
24-1= 15
25-1= 31
26-1= 63
27-1=127
1
2
3
4
5
6
7
8
9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
2
3
4
5
6
7
8
9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
100までの素数を求めよう
1
11
21
31
41
51
61
71
81
91
2
12
22
32
42
52
62
72
82
92
3
13
23
33
43
53
63
73
83
93
4
14
24
34
44
54
64
74
84
94
5
15
25
35
45
55
65
75
85
95
6
16
26
36
46
56
66
76
86
96
7
17
27
37
47
57
67
77
87
97
8
18
28
38
48
58
68
78
88
98
9 10
19 20
29 30
39 40
49 50
59 60
69 70
79 80
89 90
99 100
素因数分解
• 合成数を素数の積で表そう
12  2  2  3  2  3
2
• 12の約数は何個
– (2+1)×(1+1)=3×2=6
1
12  2  2  3  2 2  31
 (20  30 )  (2 2  31 )  112
 (21  30 )  (21  31 )  2  6
 (2 2  30 )  (20  31 )  4  3
 (20  31 )  (2 2  30 )  3  4
 (21  31 )  (21  30 )  6  2
 (2 2  31 )  (2 2  30 )  12 1
60の約数は何個、全て求めよう
60  2  2  3  5  2  3  5
2
公約数・最大公約数
• 2つ(以上)の自然数の同じ約数
• 例
– 12の約数 1、2、3、4、6、12
– 16の約数 1、2、4、8、16
– 12と16の公約数 1、2、4
• 最大公約数 GCD Greatest Common Divisor
– 最も大きい公約数
倍数・公倍数・最少公倍数
• ある数を整数倍した数を元の数の倍数という
– 例 3の倍数 ‐9,‐6,‐3,0,3,6,9
• 2つ(以上)の数の倍数で同じものを公倍数と
いう
– 例 3と5の公倍数
• 3の倍数
• 5の倍数
‐15,‐12,‐9,‐6,‐3,0,3,6,9,12,15
‐15,‐10,‐5,0,5,10,15
• 0は倍数から除くことが多い
• 0でない最小の正の公倍数を最小公倍数と
いう LCM Least Common Multiple
ユークリッドの互除法
最大公約数の求め方
• aとbの最大公約数dを求めたい
• a=bq+r a÷b=q…r a>b>r
• 「aとbの最大公約数」は
「bとrの最大公約数」と同じ!
aとbがdで割り切れる
のであれば
rもdで割り切れる
• 460と322の最大公約数を求めたい
• 460÷322=1…138 • 「460と322の最大公約数」は
「322と138の最大公約数」と同じ!
• 460と322の最大公約数を求めたい
• 460÷322=1…138 • 「460と322の最大公約数」は
「322と138の最大公約数」と同じ!
• 460÷322=1…138 • 138÷46=3…0
• 322÷138=2…46
• 138=46×3
• 138÷46=3…0
• 46=46×1
138と46との最大公約数は46
やってみよう
• 45と345の最大公約数
• 125と15の最大公約数
• 252と105の最大公約数
• 630と300の最大公約数
• 1071と1029の最大公約数
最小公倍数の求め方
2)8 20 30
4 10 15
2)4 10 15
2 5 15
5)2 5 15
2 1 3
2)8 20 30
2)4 10 15
5)2 5 15
2 1 3
LCM=2×2×5×2×1×3
=120
やってみよう
• 6と9と15の最小公倍数
• 60と154と504の最小公倍数