Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình kiểm tra đồng dạng hai tam giác trong Python


Trong hướng dẫn này, ta kiểm tra đồng dạng (congruency) của hai tam giác. Ta kiểm tra SSS, SAS, và AAA. Sự tương đồng tam giác được chứng minh dựa trên các tiêu chí đó.

Ta kiểm tra các điều kiện khác nhau dựa trên định lý. Kiểm tra trong mã dưới.

Ví dụ

def side_side_side(sides_one, sides_two):
    # Sắp xếp cùng trật tự
    sides_one.sort()
    sides_two.sort()
    # Kiểm tra điều kiện
    if sides_one[0] / sides_two[0] == sides_one[1] / sides_two[1] \
      and sides_one[1] / sides_two[1] == sides_one[2] / sides_two[2] \
      and sides_one[2] / sides_two[2] == sides_one[0] / sides_two[0]:
        return True
    return False
def side_angle_side(sides_one, sides_two, angles_one, angles_two):
    # Sắp xếp cùng trật tự
    sides_one.sort()
    sides_two.sort()
    angles_one.sort()
    angles_two.sort()
    # Kiểm tra điều kiện 1
    if sides_one[0] / sides_two[0] == sides_one[1] / sides_two[1]:
        if angles_one[0] == angles_two[0]:
            return True
    # Kiểm tra điều kiện 2
    if sides_one[1] / sides_two[1] == sides_one[2] / sides_two[2]:
        if angles_one[1] == angles_two[1]:
            return True
    # Kiểm tra điều kiện 3
    if sides_one[2] / sides_two[2] == sides_one[0] / sides_two[0]:
        if angles_one[2] == angles_two[2]:
            return True
    # Trả về False nếu không thỏa điều kiện
    return False
def angle_angle_angle(angles_one, angles_two):
    # Sắp xếp cùng trật tự
    angles_one.sort()
    angles_two.sort()
    # Kiểm tra điều kiện
    if angles_one[0] == angles_two[0] \
      or angles_one[1] == angles_two[1] \
      or angles_one[2] == angles_two[2]:
        return True
    return False
if __name__ == '__main__':
    # Khởi tạo cạnh
    sides_one = [2.0, 3.0, 3.0]
    sides_two = [4.0, 6.0, 6.0]
    # Khởi tạo góc
    angles_one = [80.0, 60.0, 40.0]
    angles_two = [40.0, 60.0, 80.0]
    # Kiểm tra in thuộc tính tương ứng
    print("Tam giác tương đồng bởi:", end=' ')
    if side_side_side(sides_one, sides_two):
        print("SSS", end=' ')
    if side_angle_side(sides_one, sides_two, angles_one, angles_two):
        print("SAS", end=' ')
    if angle_angle_angle(angles_one, angles_two):
        print("AAA", end='')

Kết quả

Nếu chạy mã trên, bạn sẽ nhận được kết quả sau.

Tam giác tương đồng bởi: SSS SAS AAA

Kết luận

Nếu có thắc mắc về hướng dẫn, hãy đề cập ở phần bình luận.