Chương trình Java để kiểm tra xem một số có phải là Palindrome hay không

Trong chương trình này, bạn sẽ học cách kiểm tra xem một số có phải là palindrome hay không trong Java. Điều này được thực hiện bằng cách sử dụng vòng lặp for và while.

Để hiểu ví dụ này, bạn nên có kiến ​​thức về các chủ đề lập trình Java sau:

  • Câu lệnh Java if… else
  • Java while và do… while Loop
  • Java cho Vòng lặp

Ví dụ 1: Chương trình kiểm tra Palindrome bằng vòng lặp while

 public class Palindrome ( public static void main(String() args) ( int num = 121, reversedInteger = 0, remainder, originalInteger; originalInteger = num; // reversed integer is stored in variable while( num != 0 ) ( remainder = num % 10; reversedInteger = reversedInteger * 10 + remainder; num /= 10; ) // palindrome if orignalInteger and reversedInteger are equal if (originalInteger == reversedInteger) System.out.println(originalInteger + " is a palindrome."); else System.out.println(originalInteger + " is not a palindrome."); ) )

Đầu ra

 121 là một số palindrome.

Trong chương trình này,

  • Đầu tiên, giá trị của số (num) đã cho được lưu trữ trong một biến số nguyên khác, originalInteger. Điều này là do, chúng ta cần so sánh giá trị của số đảo ngược và số ban đầu ở cuối.
  • Sau đó, một vòng lặp while được sử dụng để lặp qua num cho đến khi nó bằng 0.
    • Trên mỗi lần lặp, chữ số cuối cùng của num được lưu trữ trong phần còn lại.
    • Sau đó, phần còn lại được thêm vào reverseInteger để nó được thêm vào giá trị vị trí tiếp theo (nhân với 10).
    • Sau đó, chữ số cuối cùng bị xóa khỏi num sau khi chia cho 10.
  • Cuối cùng, reverseInteger và originalInteger được so sánh. Nếu bằng nhau, nó là một số palindrome. Nếu không, nó không phải là.

Dưới đây là các bước thực hiện diễn ra:

Các bước thực hiện Palindrome
num num! = 0 phần còn lại reverseInteger
121 thật 1 0 * 10 + 1 = 1
12 thật 2 1 * 10 + 2 = 12
1 thật 1 12 * 10 + 1 = 121
0 sai - 121

Ví dụ 2: Chương trình kiểm tra Palindrome bằng vòng lặp for

 public class Palindrome ( public static void main(String() args) ( int num = 11221, reversedInteger = 0, remainder, originalInteger; originalInteger = num; // reversed integer is stored in variable for( ;num != 0; num /= 10 ) ( remainder = num % 10; reversedInteger = reversedInteger * 10 + remainder; ) // palindrome if orignalInteger and reversedInteger are equal if (originalInteger == reversedInteger) System.out.println(originalInteger + " is a palindrome."); else System.out.println(originalInteger + " is not a palindrome."); ) )

Đầu ra

 11221 không phải là một palindrome.

Trong chương trình trên, vòng lặp for được sử dụng thay cho vòng lặp while.

Trên mỗi lần lặp, num /= 10được thực thi và điều kiện num !=0được kiểm tra.

thú vị bài viết...