GCD của ba số trở lên bằng tích của các thừa số nguyên tố chung cho tất cả các số, nhưng nó cũng có thể được tính bằng cách lấy nhiều lần các GCD của các cặp số
gcd[a, b, c] = gcd[a, gcd[b, c]] = gcd[gcd[a, b], c] = gcd[gcd[a, c], b]
# GCD of more than two [or array] numbers
# This function implements the Euclidian
# algorithm to find H.C.F. of two number
def
find_gcd[x, y]:
while
20
21
22
23
24
25
26
29
# GCD of more than two [or array] numbers
0# GCD of more than two [or array] numbers
1
# GCD of more than two [or array] numbers
1
# GCD of more than two [or array] numbers
3
23
# GCD of more than two [or array] numbers
5# GCD of more than two [or array] numbers
6# GCD of more than two [or array] numbers
7# GCD of more than two [or array] numbers
8# GCD of more than two [or array] numbers
7# This function implements the Euclidian
0# GCD of more than two [or array] numbers
7# This function implements the Euclidian
2# GCD of more than two [or array] numbers
7# This function implements the Euclidian
4# This function implements the Euclidian
5 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
LCM. 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 số chung thấp nhất nên nó là 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
Thí 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 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à bội số nhỏ nhất của hai hay nhiều số. Bội của một số là những số mà khi chia cho chính nó không dư. Khi nói về bội số, chúng ta chỉ xem xét số dương. Ví dụ: ƯCLN của 12 và 48 là 48 vì 48 là bội số thứ 4 của 12 và 48 là bội số thứ nhất của 48. Ở đây, một mảng các phần tử dương sẽ được cung cấp bởi người dùng và chúng ta phải tìm LCM của các phần tử của mảng bằng cách sử dụng Python. Để tìm LCM của các phần tử của mảng, hãy sử dụng thuật toán sau,
Thuật toán tìm LCM của các phần tử mảng
- Chúng ta cần nhập mô-đun toán học để tìm GCD của hai số bằng toán học. hàm gcd[]
- Lúc đầu, hãy tìm LCM của hai số ban đầu bằng cách sử dụng. LCM[a,b] = a*b/GCD[a,b]. Và, sau đó tìm LCM của ba số với sự trợ giúp của LCM của hai số đầu tiên bằng cách sử dụng LCM[ab,c] = lcm[lcm[a1, a2], a3]. Cùng một khái niệm chúng tôi đã thực hiện
Bây giờ, chúng ta sẽ viết chương trình Python một cách đơn giản bằng cách thực hiện thuật toán trên
Chương trình
# importing the module import math # function to calculate LCM def LCMofArray[a]: lcm = a[0] for i in range[1,len[a]]: lcm = lcm*a[i]//math.gcd[lcm, a[i]] return lcm # array of integers arr1 = [1,2,3] arr2 = [2,3,4] arr3 = [3,4,5] arr4 = [2,4,6,8] arr5 = [8,4,12,40,26,28] print["LCM of arr1 elements:", LCMofArray[arr1]] print["LCM of arr2 elements:", LCMofArray[arr2]] print["LCM of arr3 elements:", LCMofArray[arr3]] print["LCM of arr4 elements:", LCMofArray[arr4]] print["LCM of arr5 elements:", LCMofArray[arr5]]
đầu ra
LCM of arr1 elements: 6 LCM of arr2 elements: 12 LCM of arr3 elements: 60 LCM of arr4 elements: 24 LCM of arr5 elements: 10920
Chương trình mảng Python »