Trong bài viết này, chúng ta sẽ tìm hiểu giải pháp cho bài toán sau:
Đề bài – Cho N đồng xu xếp thành tam giác (hàng 1: 1 đồng, hàng 2: 2 đồng...), cần hiển thị chiều cao tối đa đạt được với N đồng xu.
Hãy quan sát giải pháp trong triển khai dưới đây:
Ví dụ
# căn bậc 2
def squareRoot(n):
x = n
y = 1
e = 0.000001 # sai số cho phép
while (x - y > e):
x = (x + y) / 2
y = n / x
return x
# chiều cao max
def find(N):
n = 1 + 8 * N
maxH = (-1 + squareRoot(n)) / 2
return int(maxH)
# main
N = 17
print("Chiều cao tối đa:", find(N))
Kết quả
Chiều cao tối đa: 5
Kết luận
Trong bài này, chúng ta đã học cách làm chương trình Python chiều cao tối đa khi xếp đồng xu thành tam giác.