Trong bài viết này, chúng ta sẽ tìm hiểu cách kiểm tra xem một số cho trước có phải là số Palindrome hay không. Palindrome là từ, số, cụm từ hoặc chuỗi ký tự khác đọc ngược và xuôi đều giống nhau. Ví dụ: "malayalam" hoặc số 10101 là palindrome.
Đối với một chuỗi cho trước, nếu đảo ngược chuỗi cho ra cùng chuỗi đó, ta có thể nói chuỗi đó là palindrome. Điều này có nghĩa là để kiểm tra palindrome, ta cần xem phần tử đầu và cuối, thứ hai và cuối-1, v.v. có bằng nhau hay không.
Dưới đây là minh họa:
Đầu vào
Giả sử đầu vào của chúng ta là:
Nhập số: 454
Đầu ra
Đầu ra mong muốn sẽ là:
Số 454 là số palindrome
Thuật Toán
Bước 1 - BẮT ĐẦU Bước 2 - Khai báo bốn biến nguyên my_input, my_reverse, my_sum, my_temp Bước 3 - Đọc giá trị từ người dùng hoặc định nghĩa giá trị Bước 4 - Sử dụng vòng while, tính giá trị đảo ngược của đầu vào bằng các toán tử '* % /' Bước 5 - Tính my_temp % 10 và gán cho my_reverse Bước 6 - Tính (my_sum * 10) + my_reverse và gán cho my_sum Bước 7 - Tính my_temp / 10 và gán cho my_temp Bước 8 - Lặp lại các bước và kiểm tra nếu giá trị đầu vào bằng my_sum. Nếu có, là palindrome, ngược lại không phải Bước 9 - Hiển thị kết quả Bước 10 - DỪNG
Ví Dụ 1
Ở đây, đầu vào được nhập bởi người dùng dựa trên nhắc nhở. Bạn có thể thử ví dụ này trực tiếp trong công cụ coding ground của chúng tôi.
import java.util.Scanner;
public class Palindrome {
public static void main(String args[]) {
int my_input, my_reverse, my_sum, my_temp;
System.out.println("Các gói cần thiết đã được nhập");
Scanner my_scanner = new Scanner(System.in);
System.out.println("Đối tượng đọc đã được định nghĩa");
System.out.print("Nhập số: ");
my_input = my_scanner.nextInt();
my_sum = 0;
my_temp = my_input;
while (my_temp > 0) {
my_reverse = my_temp % 10;
my_sum = (my_sum * 10) + my_reverse;
my_temp = my_temp / 10;
}
if (my_input == my_sum)
System.out.println("Số " + my_input + " là palindrome");
else
System.out.println("Số " + my_input + " không phải palindrome");
}
}
Đầu Ra
Các gói cần thiết đã được nhập Đối tượng đọc đã được định nghĩa Nhập số: 454 Số 454 là palindrome
Ví Dụ 2
Ở đây, số nguyên đã được định nghĩa trước, và giá trị của nó được truy cập và hiển thị trên bảng điều khiển.
public class Palindrome {
public static void main(String args[]) {
int my_input, my_reverse, my_sum, my_temp;
my_input = 454;
System.out.println("Số được định nghĩa là " + my_input);
my_sum = 0;
my_temp = my_input;
while (my_temp > 0) {
my_reverse = my_temp % 10;
my_sum = (my_sum * 10) + my_reverse;
my_temp = my_temp / 10;
}
if (my_input == my_sum)
System.out.println("Số " + my_input + " là palindrome");
else
System.out.println("Số " + my_input + " không phải palindrome");
}
}
Đầu Ra
Số được định nghĩa là 454 Số 454 là palindrome