■ 123 / 12 = 10 . 12 + 3
■ 571 / 26 = 21 . 26 + 25
■ –456 / 32 = –15 . 32 + 24
Pembagi Bersama Terbesar
(PBB)
■ Misalkan a dan b bilangan bulat tidak nol.
à PBB(45, 36) = 9.
Algoritma Euclidean
r0 = r1q1 + r2 0 ≤ r2 ≤ r 1 ,
r1 = r2q2 + r3 0 ≤ r3 ≤ r 2 ,
!
rn– 2 = rn–1 qn–1 + rn 0 ≤ rn ≤ rn–1,
rn–1 = rnqn + 0
Menurut Teorema 2,
Jadi, PBB dari m dan n adalah sisa terakhir yang tidak nol dari
runtunan pembagian tersebut
Diberikan dua buah bilangan bulat tak-negatif m dan n (m ≥ n).
Algoritma Euclidean berikut mencari pembagi bersama terbesar
dari m dan n.
Algoritma Euclidean
1. Jika n = 0 maka
m adalah PBB(m, n);
stop.
tetapi jika n ≠ 0,
lanjutkan ke langkah 2.
2. Bagilah m dengan n dan misalkan r adalah sisanya.
3. Ganti nilai m dengan nilai n dan nilai n dengan nilai r, lalu
ulang kembali ke langkah 1.
procedure Euclidean(input m, n : integer,
output PBB : integer)
{ Mencari PBB(m, n) dengan syarat m dan n bilangan tak-
negatif dan m ≥ n
Masukan: m dan n, m ≥ n dan m, n ≥ 0
Keluaran: PBB(m, n)
}
Kamus
r : integer
Algoritma:
while n ≠ 0 do
r ← m mod n
m ← n
n ← r
endwhile
{ n = 0, maka PBB(m,n) = m }
PBB ← m
/*Mencari PBB(m, n) dengan syarat m dan n bilangan tak-
negatif dan m ≥ n
Masukan: m dan n, m ≥ n dan m, n ≥ 0
Keluaran: PBB(m, n) */
while (n ≠ 0){
r = m % n;
m = n
n = r
}
}
Contoh 5. m = 80, n = 12 dan dipenuhi syarat m ≥ n
80 = 6 ⋅12 + 8
12 = 1 ⋅ 8 + 4
8 = 2⋅4 + 0
Sisa pembagian terakhir sebelum 0 adalah 4, maka PBB(80, 12) =
4.
Latihan
■ PBB(420 , 66)
■ PBB(308, 165)
■ PBB(735, 90)
Jawaban
■ PBB(420 , 66) = 6
■ 420 = 6 . 66 + 24
Jawaban
■ PBB(308, 165) = 11
■ 308 = 1 . 165 + 143
■ 165 = 1 . 143 + 22
■ 143 = 6 . 22 + 11
■ 22 = 2 . 11 + 0
■ PBB(735, 90) = 15
■ 735 = 8 . 90 + 15
■ 90 = 6 . 15 + 0
Bézout's Identity (Kombinasi
Lanjar)
■ PBB(a,b) dapat dinyatakan sebagai kombinasi lanjar (linear
combination) a dan b dengan koefisien-koefisennya.
■ PBB(735, 90) = 15
■ 735 = 8 . 90 + 15 15 = 735 – 8 . 90
■ 90 = 6 . 15 + 0