Giả sử chúng ta có một số n. Chúng ta phải kiểm tra xem số n có phải là hình vuông hoàn hảo hay không. Một số được cho là một số bình phương hoàn hảo khi căn bậc hai của nó là một số nguyên.
Vì vậy, nếu đầu vào là n =36, thì đầu ra sẽ là Đúng là 36 =6 * 6.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- sq_root:=phần nguyên của (căn bậc hai của n)
- trả về true khi sq_root ^ 2 giống với n, ngược lại là false
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
from math import sqrt def solve(n): sq_root = int(sqrt(n)) return (sq_root*sq_root) == n n = 36 print (solve(n))
Đầu vào
36
Đầu ra
True