Python是一種流行的編程語言,它可以用來解決各種問題,包括求勾股數。勾股數是指滿足勾股定理的三個正整數a、b和c,滿足a2 + b2 = c2。下面是一個Python程序,可以用于求出所有小于n的勾股數:
def pythagorean_triplets(n): triplets = [] for a in range(1, n): for b in range(a, n): c = (a**2 + b**2)**0.5 if c == int(c): triplets.append((a, b, int(c))) return triplets n = 20 triplets = pythagorean_triplets(n) print(triplets)
在這個程序中,我們定義了一個名為pythagorean_triplets的函數,它接受一個整數n作為參數,并在1到n之間查找勾股數。我們使用嵌套的for循環來遍歷所有可能的a和b值,然后計算它們的平方和。如果平方和的平方根是一個整數,那么我們就找到了一個勾股數,并將其添加到三元組triplets中。
最后,我們使用打印語句輸出所有勾股數。這個程序的輸出結果如下:
[(3, 4, 5), (5, 12, 13), (6, 8, 10), (8, 15, 17), (9, 12, 15), (12, 16, 20)]
這些三元組代表了所有小于20的勾股數。這個程序還可以繼續優化和改進,但是我們在這里只是作為一個示例。使用Python編程可以很容易地解決各種數學問題,包括勾股數。