Số chính phương thuận nghịch trong Java

lập trình

Số chính phương thuận nghịch là một số chính phương mà khi đảo ngược thứ tự các chữ số của nó thì vẫn thu được một số chính phương.

Ví dụ:

  • Số chính phương thuận nghịch nhỏ nhất là 1, vì 1 đọc từ trái qua phải và từ phải qua trái đều là 1.
  • Các số chính phương thuận nghịch khác gồm: 4, 9, 121, 484, 676, và cứ tiếp tục như vậy.

Để kiểm tra một số có phải là số chính phương thuận nghịch, ta có thể tính căn bậc hai của số đó, kiểm tra xem kết quả có phải là một số nguyên và sau đó so sánh số ban đầu với số chính phương thu được. Nếu hai số này bằng nhau, thì số đó là số chính phương thuận nghịch.

Ví dụ trong Java:

public class Main {
    public static boolean isPalindrome(int number) {
        int sqrt = (int) Math.sqrt(number);
        return sqrt * sqrt == number;
    }

    public static void main(String[] args) {
        int number = 121;
        boolean isPalin = isPalindrome(number);
        if (isPalin) {
            System.out.println(number + " là số chính phương thuận nghịch.");
        } else {
            System.out.println(number + " không là số chính phương thuận nghịch.");
        }
    }
}

Ở đây, chúng ta sử dụng phương thức isPalindrome() để kiểm tra xem một số có phải là số chính phương thuận nghịch hay không. Dưới đây là giải thích chi tiết về cách hoạt động của mã nguồn này:

  1. Phương thức isPalindrome(int number):
    • Đầu tiên, chúng ta tính căn bậc hai của số number bằng cách sử dụng phương thức Math.sqrt(number). Do đây là một phép tính dấu chấm động, nên chúng ta ép kiểu kết quả về kiểu int bằng cách sử dụng (int) trước Math.sqrt(number) để lấy phần nguyên.
    • Tiếp theo, chúng ta kiểm tra xem có thoả mãn điều kiện sqrt * sqrt == number hay không. Nếu điều kiện này đúng, tức là căn bậc hai của số number là một số nguyên và number là một số chính phương thuận nghịch, chúng ta trả về true. Ngược lại, nếu điều kiện sai, chúng ta trả về false.
  2. Phương thức main(String[] args):
    • Trong phương thức main, chúng ta khởi tạo một biến number là số cần kiểm tra.
    • Tiếp theo, chúng ta gọi phương thức isPalindrome(number) để kiểm tra xem number có phải là số chính phương thuận nghịch hay không. Kết quả trả về được gán cho biến isPalin.
    • Cuối cùng, chúng ta in ra thông báo phù hợp dựa trên giá trị của isPalin.

Với ví dụ trong mã nguồn trên, khi chạy chương trình, nó sẽ kiểm tra xem số 121 có phải là số chính phương thuận nghịch hay không. Vì 121 là số chính phương thuận nghịch (căn bậc hai của 121 là 11), nên thông báo được in ra là “121 là số chính phương thuận nghịch.”

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *