Math Labs

Lớp 6

ƯCLN, BCNN và thuật toán Euclid

Ước chung lớn nhất và bội chung nhỏ nhất của các số nguyên, tính hiệu quả bằng thuật toán Euclid.

Trực giácMảnh chung lớn nhất và chu kỳ gặp nhau sớm nhất

Giả sử bạn có hai dải ruy băng dài 4848 cm và 1818 cm và muốn cắt cả hai thành các đoạn bằng nhau có độ dài nguyên lớn nhất có thể mà không thừa: độ dài lớn nhất đó là gcd⁡(48,18)=6\gcd(48,18)=6 cm, tức ước chung lớn nhất. Ngược lại, nếu một đèn hiệu nháy mỗi 4848 giây và đèn kia mỗi 1818 giây, thời điểm dương đầu tiên chúng cùng nháy trở lại là lcm⁡(48,18)=144\operatorname{lcm}(48,18)=144 giây, tức bội chung nhỏ nhất.

Hình chữ nhật 15×10 được lát bằng hình vuông 10×10 rồi hai hình vuông 5×5: thuật toán Euclid hình học.
Thuật toán Euclid hình học cho họ hình chữ nhật (n+5)×n(n+5)\times n: với n=10n=10, hình 15×1015\times10 được lát bằng một hình vuông 10×1010\times10 và hai hình vuông 5×55\times5, nên cạnh cuối là gcd⁡(15,10)=5\gcd(15,10)=5.

Phổ thôngĐịnh nghĩa, thuật toán Euclid và đẳng thức tích

Định nghĩa: Ước chung lớn nhất và bội chung nhỏ nhất

Với các số nguyên dương a,ba,b, ước chung lớn nhất gcd⁡(a,b)\gcd(a,b) là số nguyên dương lớn nhất dd thỏa d∣ad\mid a và d∣bd\mid b (khi gcd⁡(a,b)=1\gcd(a,b)=1, ta nói aa và bb nguyên tố cùng nhau). Bội chung nhỏ nhất lcm⁡(a,b)\operatorname{lcm}(a,b) là số nguyên dương nhỏ nhất mm thỏa a∣ma\mid m và b∣mb\mid m.

gcd⁡(a,b)=gcd⁡(b,r)(a=bq+r, 0≤r<b)\gcd(a,b) = \gcd(b,r) \qquad (a = bq + r,\ 0 \le r < b)

Đây là bước cốt lõi của thuật toán Euclid: chia aa cho bb để được a=bq+r, 0≤r<ba=bq+r,\ 0\le r<b bảo toàn ước chung lớn nhất qua gcd⁡(a,b)=gcd⁡(b,r)\gcd(a,b)=\gcd(b,r). Lặp lại cho đến khi số dư bằng 00 sẽ tìm được gcd⁡(a,b)\gcd(a,b) mà không cần phân tích aa hay bb ra thừa số nguyên tố.

gcd⁡(a,b)⋅lcm⁡(a,b)=ab(a,b>0)\gcd(a,b) \cdot \operatorname{lcm}(a,b) = a b \qquad (a,b > 0)

Khi đã biết gcd⁡(a,b)\gcd(a,b), ta tính được ngay lcm⁡(a,b)\operatorname{lcm}(a,b) từ đẳng thức tích gcd⁡(a,b)⋅lcm⁡(a,b)=ab\gcd(a,b)\cdot\operatorname{lcm}(a,b)=ab: lấy tích abab chia cho gcd⁡(a,b)\gcd(a,b).

Ví dụ về ƯCLN, BCNN và đẳng thức tích
Cặp (a,b)(a,b)gcd⁡(a,b)\gcd(a,b)lcm⁡(a,b)\operatorname{lcm}(a,b)Kiểm tra tích
(8,12)(8,12)4424244×24=8×12=964\times24=8\times12=96
(9,16)(9,16)111441441×144=9×16=1441\times144=9\times16=144
(15,25)(15,25)5575755×75=15×25=3755\times75=15\times25=375
(48,18)(48,18)661441446×144=48×18=8646\times144=48\times18=864

Đại họcVì sao thuật toán Euclid và công thức tích đúng

Với các số nguyên a≥b>0a\ge b>0 thỏa a=bq+r, 0≤r<ba=bq+r,\ 0\le r<b, tập các ước chung của aa và bb bằng tập các ước chung của bb và rr; do đó gcd⁡(a,b)=gcd⁡(b,r)\gcd(a,b)=\gcd(b,r), và việc lặp lại bước chia có dư dừng sau hữu hạn bước với số dư khác không cuối cùng đúng bằng gcd⁡(a,b)\gcd(a,b).

Vì sao đúng?

Trừ đi một bội của bb khỏi aa không thể tạo thêm hay làm mất ước chung với bb: bất kỳ số nào chia hết cả aa và bb cũng phải chia hết phần dư r=a−bqr=a-bq, và ngược lại.

Chứng minh

Bước 1 (Cùng tập ước chung). Giả sử dd là số nguyên chia hết cả aa và bb, tức a=dxa=dx và b=dyb=dy với x,yx,y nguyên. Khi đó r=a−bq=dx−dyq=d(x−yq)r=a-bq=dx-dyq=d(x-yq), nên d∣rd\mid r, nghĩa là dd chia hết cả bb và rr. Ngược lại, nếu dd chia hết cả bb và rr, giả sử b=dyb=dy và r=dzr=dz, thì a=bq+r=dyq+dz=d(yq+z)a=bq+r=dyq+dz=d(yq+z), nên d∣ad\mid a, nghĩa là dd chia hết cả aa và bb.

Bước 2 (Hai ước chung lớn nhất bằng nhau). Vì hai cặp (a,b)(a,b) và (b,r)(b,r) có cùng tập hợp các ước chung, phần tử lớn nhất của chúng phải bằng nhau: gcd⁡(a,b)=gcd⁡(b,r)\gcd(a,b)=\gcd(b,r).

Bước 3 (Dừng sau hữu hạn bước). Mỗi bước chia tạo ra số dư thỏa 0≤r<b0\le r<b, nên dãy các số thứ hai b>r1>r2>⋯≥0b > r_1 > r_2 > \cdots \ge 0 là dãy số nguyên không âm giảm ngặt. Dãy như vậy có nhiều nhất bb bước trước khi chạm 00; tại bước gcd⁡(rk−1,rk)=gcd⁡(rk,0)=rk\gcd(r_{k-1},r_k)=\gcd(r_k,0)=r_k, số dư khác không cuối cùng rkr_k chính là gcd⁡(a,b)\gcd(a,b).

Với hai số nguyên dương aa và bb bất kỳ, gcd⁡(a,b)⋅lcm⁡(a,b)=ab\gcd(a,b)\cdot\operatorname{lcm}(a,b)=ab.

Vì sao đúng?

Với mỗi ước nguyên tố pp, gcd⁡(a,b)\gcd(a,b) lấy số mũ nhỏ hơn của pp trong a,ba,b còn lcm⁡(a,b)\operatorname{lcm}(a,b) lấy số mũ lớn hơn; cộng số nhỏ hơn và số lớn hơn trong hai số luôn bằng đúng tổng của hai số đó.

Chứng minh

Bước 1. Viết phân tích thừa số nguyên tố của aa và bb trên mọi số nguyên tố pp: a=∏ppepa=\prod_p p^{e_p} và b=∏ppfpb=\prod_p p^{f_p}, với ep,fp≥0e_p,f_p\ge0 và chỉ có hữu hạn số mũ khác không.

Bước 2. Một số nguyên dương d=∏ppcpd=\prod_p p^{c_p} chia hết cả aa và bb khi và chỉ khi cp≤epc_p\le e_p và cp≤fpc_p\le f_p với mọi pp, nên ước lớn nhất chọn cp=min⁡(ep,fp)c_p=\min(e_p,f_p): gcd⁡(a,b)=∏ppmin⁡(ep,fp)\gcd(a,b)=\prod_p p^{\min(e_p,f_p)}. Lập luận đối ngẫu cho bội chung chọn số mũ nhỏ nhất không nhỏ hơn cả hai, cho lcm⁡(a,b)=∏ppmax⁡(ep,fp)\operatorname{lcm}(a,b)=\prod_p p^{\max(e_p,f_p)}.

Bước 3. Với hai số thực bất kỳ, min⁡(ep,fp)+max⁡(ep,fp)=ep+fp\min(e_p,f_p)+\max(e_p,f_p)=e_p+f_p. Nhân hai tích theo từng thừa số nguyên tố vì thế cho gcd⁡(a,b)⋅lcm⁡(a,b)=∏ppmin⁡(ep,fp)+max⁡(ep,fp)=∏ppep+fp=(∏ppep)(∏ppfp)=ab\gcd(a,b)\cdot\operatorname{lcm}(a,b)=\prod_p p^{\min(e_p,f_p)+\max(e_p,f_p)}=\prod_p p^{e_p+f_p}=\left(\prod_p p^{e_p}\right)\left(\prod_p p^{f_p}\right)=ab.

Đại họcỨng dụng thực tiễn và Ví dụ minh họa

Kỹ sư xây dựng dùng gcd⁡(a,b)\gcd(a,b) để chọn viên gạch hoặc tấm panel vuông mô-đun lớn nhất lát vừa khít sàn hình chữ nhật mà không cần cắt; nhà quy hoạch giao thông và kỹ sư hệ thống nhúng dùng lcm⁡(a,b)\operatorname{lcm}(a,b) để tìm chu kỳ chung của các tác vụ định kỳ hoặc lịch xe buýt; còn mật mã học chạy thuật toán Euclid trên các số nguyên hàng nghìn bit hàng triệu lần mỗi giây.

Ví dụ: Lát sân bằng các tấm đá vuông lớn nhất

Một sân hình chữ nhật có kích thước 4848 m nhân 1818 m. Bạn muốn lát kín sân bằng các tấm đá hình vuông giống hệt nhau có cạnh nguyên (tính bằng mét), không cắt viên nào. Độ dài cạnh tấm đá lớn nhất có thể dùng là bao nhiêu, và cần bao nhiêu tấm?

Lời giải

Bước 1. Tấm đá vuông cạnh ss m lát vừa khít không cần cắt theo cả hai chiều khi và chỉ khi s∣48s\mid48 và s∣18s\mid18, nên ss lớn nhất như vậy là gcd⁡(48,18)\gcd(48,18).

Bước 2. Chạy thuật toán Euclid: 48=2×18+1248=2\times18+12, tiếp theo 18=1×12+618=1\times12+6, rồi 12=2×6+012=2\times6+0. Số dư khác không cuối cùng là 66, nên gcd⁡(48,18)=6\gcd(48,18)=6 m.

Bước 3. Đếm số tấm đá: 48÷6=848\div6=8 tấm theo chiều dài và 18÷6=318\div6=3 tấm theo chiều rộng, cần tổng cộng 8×3=248\times3=24 tấm.

Ví dụ: Đồng bộ hai tuyến xe buýt

Tuyến A rời bến trung tâm mỗi 1212 phút và Tuyến B rời bến mỗi 1818 phút. Cả hai cùng xuất phát lúc 08:0008{:}00. Sau bao nhiêu phút nữa chúng lại cùng xuất phát, và vào lúc mấy giờ?

Lời giải

Bước 1. Tuyến A xuất phát tại các bội của 1212 phút và Tuyến B tại các bội của 1818 phút, nên lần cùng xuất phát dương đầu tiên là sau lcm⁡(12,18)\operatorname{lcm}(12,18) phút.

Bước 2. Tìm ƯCLN trước: 18=1×12+618=1\times12+6 và 12=2×6+012=2\times6+0, cho gcd⁡(12,18)=6\gcd(12,18)=6.

Bước 3. Áp dụng đẳng thức tích: lcm⁡(12,18)=12×186=36\operatorname{lcm}(12,18)=\dfrac{12\times18}{6}=36 phút. Cộng 3636 phút vào 08:0008{:}00 cho thời điểm cùng xuất phát tiếp theo là 08:3608{:}36.

Dùng bước đầu tiên của thuật toán Euclid trên (48,18)(48,18), tức 48=2×18+1248=2\times18+12, đẳng thức ƯCLN nào sau đây đúng?

Hai số nguyên dương a,ba,b thỏa ab=180ab=180 và gcd⁡(a,b)=6\gcd(a,b)=6. Giá trị của lcm⁡(a,b)\operatorname{lcm}(a,b) là bao nhiêu?

Cặp số nào dưới đây nguyên tố cùng nhau (gcd⁡(a,b)=1\gcd(a,b)=1)?

Hai bánh răng có 1616 răng và 2020 răng ăn khớp với nhau tại một cặp răng được đánh dấu. Sau bao nhiêu bước răng thì đúng cặp răng đánh dấu đó lại khớp nhau lần đầu tiên?

Tài liệu tham khảo

  1. David M. Burton (2010). Elementary Number Theory
  2. John H. Conway, Richard K. Guy (1996). The Book of Numbers · DOI:10.1007/978-1-4612-4072-3