Tìm số chính phương gần nhất của một số nguyên trong Python

Nhóm học lập trình

Để tìm số chính phương gần nhất của một số nguyên, bạn có thể làm theo các bước sau:

  1. Tìm căn bậc hai của số nguyên đó.
  2. Làm tròn căn bậc hai tìm được đến số nguyên gần nhất.
  3. Tính bình phương của số nguyên gần nhất đã được làm tròn.
  4. So sánh số chính phương tìm được với số ban đầu và xác định số chính phương gần nhất.

Dưới đây là một ví dụ cụ thể:

Giả sử bạn muốn tìm số chính phương gần nhất của số nguyên 17.

  1. Tìm căn bậc hai của 17: √17 ≈ 4.123.
  2. Làm tròn căn bậc hai tìm được đến số nguyên gần nhất: 4.
  3. Tính bình phương của số nguyên gần nhất đã được làm tròn: 4² = 16.
  4. So sánh số chính phương tìm được (16) với số ban đầu (17). Ta thấy số chính phương gần nhất của 17 là 16.

Vậy, số chính phương gần nhất của số nguyên 17 là 16.

Dưới đây là một cài đặt Python của thuật toán tìm số chính phương gần nhất của một số nguyên:

import math

def nearest_square(number):
    # Tìm căn bậc hai của số nguyên
    square_root = math.sqrt(number)
    
    # Làm tròn căn bậc hai tìm được đến số nguyên gần nhất
    nearest_integer = round(square_root)
    
    # Tính bình phương của số nguyên gần nhất đã được làm tròn
    nearest_square = nearest_integer ** 2
    
    return nearest_square

# Ví dụ sử dụng
number = 17
nearest_square_number = nearest_square(number)
print("Số chính phương gần nhất của", number, "là:", nearest_square_number)