Toán lcm Python

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.
      print[math.lcm[6, 4]]
      # 12
      
      3 Chỉ hỗ trợ hai đối số]
  • Trăn 3. 5 hoặc muộn hơn
    • GCD.
      print[math.lcm[6, 4]]
      # 12
      
      4 [Chỉ hỗ trợ hai đối số]
  • Trăn 3. 9 hoặc muộn hơn
    • GCD.
      print[math.lcm[6, 4]]
      # 12
      
      4 [Hỗ trợ nhiều hơn ba đối số]
    • 500.000.
      print[math.lcm[6, 4]]
      # 12
      
      6 [Hỗ trợ nhiều hơn ba đối số]

Liên kết được tài trợ

GCD của hai số

Trăn 3. 5 hoặc muộn hơn.
print[math.lcm[6, 4]]
# 12
4

Hàm

print[math.lcm[6, 4]]
# 12
8 đã được thêm vào mô-đun
print[math.lcm[6, 4]]
# 12
9 trong Python 3. 5

import math

print[math.gcd[6, 4]]
# 2

nguồn.

Trăn 3. 4 hoặc sớm hơn.
print[math.lcm[6, 4]]
# 12
3

Lưu ý rằng trong Python 3. 4 hoặc sớm hơn, hàm

print[math.lcm[6, 4]]
# 12
8 nằm trong mô-đun
lcm[a, b] = a * b / gcd[a, b]
2, không phải mô-đun
print[math.lcm[6, 4]]
# 12
9. Bạn cần nhập
lcm[a, b] = a * b / gcd[a, b]
2 và viết
print[math.lcm[6, 4]]
# 12
3

LCM của hai số

Trăn 3. 9 hoặc muộn hơn.
print[math.lcm[6, 4]]
# 12
6

Hàm

lcm[a, b] = a * b / gcd[a, b]
7 đã được thêm vào mô-đun
print[math.lcm[6, 4]]
# 12
9 trong Python 3. 9

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,

lcm[a, b] = a * b / gcd[a, b]
7 không được cung cấp nhưng có thể dễ dàng tính toán bằng cách sử dụng
print[math.lcm[6, 4]]
# 12
8

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.
print[math.lcm[6, 4]]
# 12
4,
print[math.lcm[6, 4]]
# 12
6

Trong Trăn 3. 9 trở lên, cả

print[math.lcm[6, 4]]
# 12
4 và
print[math.lcm[6, 4]]
# 12
6 đều hỗ trợ số lượng đối số tùy ý

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

def my_lcm[x, y]:
    return [x * y] // math.gcd[x, y]

print[my_lcm[6, 4]]
# 12
5

  • 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
def my_lcm[x, y]:
    return [x * y] // math.gcd[x, y]

print[my_lcm[6, 4]]
# 12
6

Trong Trăn 3. 8 hoặc sớm hơn,

print[math.lcm[6, 4]]
# 12
8 chỉ hỗ trợ hai đối số

Để 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

def my_lcm[x, y]:
    return [x * y] // math.gcd[x, y]

print[my_lcm[6, 4]]
# 12
8 của mô-đun
def my_lcm[x, y]:
    return [x * y] // math.gcd[x, y]

print[my_lcm[6, 4]]
# 12
9

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ố,

print[math.lcm[6, 4]]
# 12
4 trả 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
1 và
print[math.lcm[6, 4]]
# 12
6 trả 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
3

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ố

print[math.lcm[6, 4]]
# 12
0

nguồn.

Để có được kết quả tương tự như

print[math.lcm[6, 4]]
# 12
4 và
print[math.lcm[6, 4]]
# 12
6, hãy chỉ định đối số thứ ba
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 của
def my_lcm[x, y]:
    return [x * y] // math.gcd[x, y]

print[my_lcm[6, 4]]
# 12
8

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

Chủ Đề