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

Kiểm tra số có thể thành bình phương hoàn hảo sau khi cộng 1 trong Python

Cho số n. Kiểm tra n+1 có phải bình phương hoàn hảo không.

Ví dụ: n=288 → 289=17^2 → True.

Thuật toán

  • res_num = n + 1.
  • sqrt_val = int(sqrt(res_num)).
  • Kiểm tra sqrt_val^2 == res_num.

Ví dụ code

from math import sqrt

def solve(n):
    res_num = n + 1
    sqrt_val = int(sqrt(res_num))
    if sqrt_val * sqrt_val == res_num:
        return True
    return False

n = 288
print(solve(n))

Đầu vào

288

Đầu ra

True