Tính ước chung lớn nhất (GCD) và bội chung nhỏ nhất (LCM) với các bước thuật toán Euclid hoàn chỉnh. Hỗ trợ hai hoặc nhiều số.
Ước số chung lớn nhất (GCD) và Bội số chung nhỏ nhất (LCM) là hai trong số những khái niệm quan trọng nhất trong lý thuyết số sơ cấp, với ứng dụng từ rút gọn phân số ở trường trung học đến các thuật toán mật mã bảo mật internet.
Thuật toán Euclid, được mô tả bởi Euclid khoảng 300 TCN, là một trong những thuật toán lâu đời nhất và hiệu quả nhất trong toán học. Nó tính GCD trong O(log(min(a,b))) bước, kết thúc nhanh chóng ngay cả với số rất lớn. Thuật toán áp dụng đẳng thức: GCD(a, b) = GCD(b, a mod b) lặp lại cho đến khi số dư bằng không.
Máy tính này hiển thị thuật toán Euclid hoàn chỉnh từng bước cho hai số và cũng tính GCD và LCM cho danh sách nhiều số bằng cách tổng quát hóa: GCD(a, b, c) = GCD(GCD(a, b), c).
Tìm ƯCLN(48, 18): 48 = 2×18 + 12 → 18 = 1×12 + 6 → 12 = 2×6 + 0. ƯCLN = 6. BCNN = |48×18|/6 = 864/6 = 144. Kiểm tra: 144/48 = 3 ✓, 144/18 = 8 ✓.
Áp dụng thuật toán Euclid để tìm GCD(48, 18)
Các bước chia (thuật toán Euclid)
48 = 2 × 18 + 12 → 18 = 1 × 12 + 6 → 12 = 2 × 6 + 0
GCD(48, 18) = số dư khác 0 cuối cùng
BCNN = |a × b| / UCLN
LCM(48, 18)
• ƯCLN(a, b) × BCNN(a, b) = |a × b|
• UCLN(a, 0) = a (mọi số đều chia hết cho chính nó)
• Nếu GCD(a, b) = 1, thì a và b là nguyên tố cùng nhau (co-prime)
• Thuật toán Euclid chạy trong thời gian O(log(min(a,b)))
• LCM được dùng để cộng các phân số có mẫu số khác nhau