Trong hướng dẫn sau, chúng ta sẽ tìm hiểu cách tìm Bội số chung nhỏ nhất [LCM] bằng ngôn ngữ lập trình Python
Nhưng trước khi bắt đầu, chúng ta hãy thảo luận ngắn gọn về LCM
500.000. Bội Số Chung Nhỏ Nhất/ Bội Số Chung Nhỏ Nhất
LCM là viết tắt của Bội số chung nhỏ nhất. Đó là một khái niệm về số học và hệ thống số. ƯCLN của hai số nguyên a và b được kí hiệu là ƯCLN [a,b]. Đó là số nguyên dương nhỏ nhất chia hết cho cả "a" và "b"
Ví dụ. Ta có hai số nguyên 4 và 6. Cùng LCM tìm hiểu nhé
Bội số của 4 là
Các bội số của 6 là
Các bội số chung của 4 và 6 chỉ đơn giản là các số có trong cả hai danh sách
LCM là bội chung nhỏ nhất nên nó bằng 12
Vì chúng ta đã hiểu khái niệm cơ bản về BCNN, chúng ta hãy xem xét chương trình sau để tìm BCNN của các số nguyên đã cho
Ví dụ
đầu ra
Enter first number: 3 Enter second number: 4 The L.C.M. of 3 and 4 is 12
Giải trình
Chương trình này lưu trữ hai số trong num1 và num2 tương ứng. Những con số này được chuyển đến hàm compute_lcm[]. Hàm trả về LCM của hai số
Trong hàm, trước tiên chúng tôi đã xác định số lớn hơn trong hai số vì LCM chỉ có thể lớn hơn hoặc bằng số lớn nhất. Sau đó, chúng tôi sử dụng một vòng lặp vô hạn để đi từ số đó và hơn thế nữa
Trong mỗi lần lặp lại, chúng tôi đã kiểm tra xem cả hai số có chia hết cho số. Nếu vậy, chúng tôi đã lưu số dưới dạng LCM và thoát khỏi vòng lặp. Mặt khác, số được tăng thêm 1 và vòng lặp tiếp tục
LCM là viết tắt của Bội số chung nhỏ nhất. Bội số chung nhỏ nhất hoặc Bội số chung thấp nhất xuất phát từ số học và lý thuyết số. Lcm của hai số trong python là số hoặc giá trị dương nhỏ nhất có thể chia hết cho cả hai số được cung cấp
LCM của hai số [giả sử a và b] được ký hiệu là lcm[a, b]
Ghi chú
Như chúng ta đã biết, khi chúng ta chia một số cho 0, kết quả là không xác định. Vì vậy, cả a và b không được bằng 0
Ví dụ: LCM của 15 và 20 là 60;
Có một số cách tính lcm của hai số trong python. Chúng ta có thể tìm LCM của hai hoặc nhiều số bằng vòng lặp, phương thức gcd và các hàm dựng sẵn
Tham khảo hình ảnh cung cấp dưới đây để hiểu rõ hơn
Hãy cùng tìm hiểu về các cách tính lcm của hai số trong python
Chương trình Python để tính toán LCM
Viết chương trình tìm ƯCLN của hai số. Trước khi thực sự đi sâu vào mã, trước tiên chúng ta hãy tạo một biểu đồ luồng để trực quan hóa hoạt động của mã
Tên chức năng. lcm[a, b]
Đầu tiên, chúng ta sẽ tính số lớn hơn giữa a và b. Sau khi tính toán số lớn hơn trong số các tham số, chúng tôi sẽ chạy một vòng lặp vô hạn. Ta sẽ chia số lớn hơn cho a và b. Nếu cả hai số có thể chia hết số lớn hơn, chúng tôi đã tìm thấy lcm của mình. Nếu không, chúng ta sẽ tăng số lớn hơn lên 111 và thực hiện quá trình tương tự như trên cho đến khi số lớn hơn chia hết hai số a và b
Hãy tính lcm của 4 và 6
Mã số
def lcm[a, b]: if a > b: greater = a else: greater = b while[True]: if[[greater % a == 0] and [greater % b == 0]]: lcm = greater break greater += 1 return lcm if __name__ == '__main__': print["LCM = ", lcm[4, 6]]
đầu ra
Chương trình tính toán LCM bằng GCD
Trước khi tìm hiểu cách tìm lcm trong python bằng gcd hay HCF [Highest Common Factor] trước tiên chúng ta nên biết gcd là gì
GCD là viết tắt của Ước chung lớn nhất. Ước chung lớn nhất của hai hay nhiều số là số nguyên dương lớn nhất chia hết cho mỗi số
Chúng tôi có thể tạo cả hai số nếu chúng tôi biết LCM và HCF của hai số. Công thức cơ bản là
axb=lcm[a,b]∗gcd[a,b]a x b = lcm[a,b] * gcd[a,b]axb=lcm[a,b]∗gcd[a,b]
vì thế
LCM[a,b]=[a∗b]/gcd[a,b]LCM[a,b] = [a * b] / gcd[a,b]LCM[a,b]=[a∗b] /gcd[a,b]
Bây giờ, chúng ta có thể tính toán gcd của hai hoặc nhiều số bằng cách sử dụng đệ quy và hàm gcd của mô-đun toán học
Bài viết này mô tả cách tìm ước chung lớn nhất [GCD] và bội chung nhỏ nhất [LCM] trong Python
- GCD và LCM của hai số
- GCD và LCM từ ba số trở lên
Lưu ý rằng thông số kỹ thuật của các chức năng được cung cấp trong thư viện chuẩn khác nhau tùy thuộc vào phiên bản Python
- Trăn 3. 4 hoặc sớm hơn
- GCD.
3 Chỉ hỗ trợ hai đối số]print[math.lcm[6, 4]] # 12
- Trăn 3. 5 hoặc muộn hơn
- GCD.
4 [Chỉ hỗ trợ hai đối số]print[math.lcm[6, 4]] # 12
- Trăn 3. 9 hoặc muộn hơn
- GCD.
4 [Hỗ trợ nhiều hơn ba đối số]print[math.lcm[6, 4]] # 12
- 500.000.
6 [Hỗ trợ nhiều hơn ba đối số]print[math.lcm[6, 4]] # 12
Liên kết được tài trợ
GCD của hai số
Trăn 3. 5 hoặc muộn hơn.
4print[math.lcm[6, 4]] # 12
Hàm
8 đã được thêm vào mô-đunprint[math.lcm[6, 4]] # 12
9 trong Python 3. 5print[math.lcm[6, 4]] # 12
import math print[math.gcd[6, 4]] # 2
nguồn.
Trăn 3. 4 hoặc sớm hơn.
3print[math.lcm[6, 4]] # 12
Lưu ý rằng trong Python 3. 4 hoặc sớm hơn, hàm
8 nằm trong mô-đunprint[math.lcm[6, 4]] # 12
2, không phải mô-đunlcm[a, b] = a * b / gcd[a, b]
9. Bạn cần nhậpprint[math.lcm[6, 4]] # 12
2 và viếtlcm[a, b] = a * b / gcd[a, b]
3print[math.lcm[6, 4]] # 12
LCM của hai số
Trăn 3. 9 hoặc muộn hơn.
6print[math.lcm[6, 4]] # 12
Hàm
7 đã được thêm vào mô-đunlcm[a, b] = a * b / gcd[a, b]
9 trong Python 3. 9print[math.lcm[6, 4]] # 12
print[math.lcm[6, 4]] # 12
nguồn.
Trăn 3. 8 hoặc sớm hơn. Sử dụng GCD
Trong Trăn 3. 8 hoặc sớm hơn,
7 không được cung cấp nhưng có thể dễ dàng tính toán bằng cách sử dụnglcm[a, b] = a * b / gcd[a, b]
8print[math.lcm[6, 4]] # 12
lcm[a, b] = a * b / gcd[a, b]
def my_lcm[x, y]: return [x * y] // math.gcd[x, y] print[my_lcm[6, 4]] # 12
nguồn.
Lưu ý rằng hàm trong ví dụ trên không kiểm tra xem các đối số có phải là số nguyên không
Liên kết được tài trợ
GCD và LCM từ ba số trở lên
Trăn 3. 9 hoặc muộn hơn.
4,print[math.lcm[6, 4]] # 12
6print[math.lcm[6, 4]] # 12
Trong Trăn 3. 9 trở lên, cả
4 vàprint[math.lcm[6, 4]] # 12
6 đều hỗ trợ số lượng đối số tùy ýprint[math.lcm[6, 4]] # 12
print[math.gcd[27, 18, 9]] # 9 print[math.gcd[27, 18, 9, 3]] # 3 print[math.lcm[27, 9, 3]] # 27 print[math.lcm[27, 18, 9, 3]] # 54
nguồn.
Nếu bạn muốn tìm GCD và LCM của các phần tử trong danh sách, hãy chỉ định nó bằng
5def my_lcm[x, y]: return [x * y] // math.gcd[x, y] print[my_lcm[6, 4]] # 12
- Giải nén và chuyển danh sách, tuple, dict sang đối số hàm trong Python
l = [27, 18, 9, 3] print[math.gcd[*l]] # 3 print[math.lcm[*l]] # 54
nguồn.
Trăn 3. 8 hoặc sớm hơn. Sử dụng
6def my_lcm[x, y]: return [x * y] // math.gcd[x, y] print[my_lcm[6, 4]] # 12
Trong Trăn 3. 8 hoặc sớm hơn,
8 chỉ hỗ trợ hai đối sốprint[math.lcm[6, 4]] # 12
Để tìm GCD và LCM của ba số nguyên trở lên, chỉ cần tính lũy tích chúng
gcd[a, b, c, d, ...] = gcd[ .. gcd[gcd[gcd[a, b], c], d], ...] lcm[a, b, c, d, ...] = lcm[ .. lcm[lcm[lcm[a, b], c], d], ...]
Sử dụng
8 của mô-đundef my_lcm[x, y]: return [x * y] // math.gcd[x, y] print[my_lcm[6, 4]] # 12
9def my_lcm[x, y]: return [x * y] // math.gcd[x, y] print[my_lcm[6, 4]] # 12
GCD
import functools def my_gcd[*integers]: return functools.reduce[math.gcd, integers] print[my_gcd[27, 18, 9]] # 9 print[my_gcd[27, 18, 9, 3]] # 3 l = [27, 18, 9, 3] print[my_gcd[*l]] # 3
nguồn.
500.000
def my_lcm_base[x, y]: return [x * y] // math.gcd[x, y] def my_lcm[*integers]: return functools.reduce[my_lcm_base, integers] print[my_lcm[27, 9, 3]] # 27 print[my_lcm[27, 18, 9, 3]] # 54 l = [27, 18, 9, 3] print[my_lcm[*l]] # 54
nguồn.
Không có đối số
Không có đối số,
4 trả vềprint[math.lcm[6, 4]] # 12
1 vàprint[math.gcd[27, 18, 9]] # 9 print[math.gcd[27, 18, 9, 3]] # 3 print[math.lcm[27, 9, 3]] # 27 print[math.lcm[27, 18, 9, 3]] # 54
6 trả vềprint[math.lcm[6, 4]] # 12
3print[math.gcd[27, 18, 9]] # 9 print[math.gcd[27, 18, 9, 3]] # 3 print[math.lcm[27, 9, 3]] # 27 print[math.lcm[27, 18, 9, 3]] # 54
print[math.gcd[]] # 0 print[math.lcm[]] # 1
nguồn.
Các chức năng được xác định ở trên gây ra lỗi mà không có đối số
0print[math.lcm[6, 4]] # 12
nguồn.
Để có được kết quả tương tự như
4 vàprint[math.lcm[6, 4]] # 12
6, hãy chỉ định đối số thứ baprint[math.lcm[6, 4]] # 12
6 củaprint[math.gcd[27, 18, 9]] # 9 print[math.gcd[27, 18, 9, 3]] # 3 print[math.lcm[27, 9, 3]] # 27 print[math.lcm[27, 18, 9, 3]] # 54
8def my_lcm[x, y]: return [x * y] // math.gcd[x, y] print[my_lcm[6, 4]] # 12
Có chức năng LCM trong Python không?
Mô-đun toán học trong Python chứa một số phép toán. Trong số một số hàm quan trọng nhất trong mô-đun này là hàm lcm[] trả về bội số chung nhỏ nhất của các đối số số nguyên đã chỉ định. Hàm lcm mới được giới thiệu trong Python phiên bản 3. 9 .Làm thế nào để tính LCM?
Công thức tìm ƯCLN của các phân số được cho bởi. .L. C. M. = L. C. M Của Tử Số/H. C. F Của Mẫu Số. .Bây giờ, chúng ta hãy lấy một ví dụ về 3 số. .Giải pháp. Đầu tiên hãy viết các bội chung của cả ba số. .Giải pháp