String atau nombor dikatakan sebagai palindrom jika ia kekal sama walaupun selepas ia diterbalikkan. Sebagai contoh, 'MADAM' ialah rentetan palindrom kerana ia dieja 'MADAM' walaupun ia diterbalikkan. Tetapi dalam kes 'LUCKY', rentetan ini bukan palindrom kerana ia adalah 'YKCUL' apabila ia diterbalikkan. Beberapa nombor palindrom ialah 365563, 48984, 12321, 171, 88, 90009, 343, dan beberapa rentetan palindrom ialah MADAM, MALAYALAM, LOL, DAD, MOM, C++&++C, dsb. Mari kita lihat logik dan pelaksanaan palindrom dalam bahagian berikut. Dalam topik ini, kita akan belajar tentang Palindrom di Jawa.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Logik Di Sebalik Palindrom di Jawa
Untuk menyemak sama ada nombor adalah palindrom, algoritma berikut boleh digunakan.
- Ambil rentetan input atau nombor yang perlu diperiksa sama ada ia palindrom atau tidak.
Sebagai contoh, mari kita ambil nombor 353 sebagai input.
- Ambil nombor input dan salin ke dalam pembolehubah temp
353-> temp
- Terbalikkannya menggunakan untuk, semasa atau mana-mana kaedah pilihan anda.
Reversednumber: rev=353
- Bandingkan nombor input dan nombor terbalik.
Jika mereka sama, maka nombor itu dikatakan sebagai nombor palindrom.
Jika tidak, nombor itu bukan nombor palindrom.
iaitu
1 2 3 | If(inputnum==rev)
{ then palindrome }
Else not palindrome
|
Salin selepas log masuk
Bagaimana Menguji Palindrom menggunakan Pelbagai Kaedah?
Terdapat beberapa kaedah untuk menyemak sama ada nombor input yang diberikan adalah palindrom atau tidak.
- Untuk Gelung
- Gelung Semasa
- Kaedah Perpustakaan(untuk rentetan)
Mari kita lihat setiap satu daripada mereka secara terperinci:
1. Program untuk menyemak nombor palindrom menggunakan gelung untuk
Kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | import java.util.*;
public class PalindromeNumberExample {
public static void main(String[] args) {
int r=0 ;
int rem, num;
Scanner s = new Scanner(System.in);
System.out. print ( "Enter number that has to be checked:" );
num = s.nextInt();
int temp = num;
for ( ;num != 0; num /= 10 )
{
rem = num % 10;
r = r * 10 + rem;
}
if (temp == r)
{
System.out.println(temp + " is input number" );
System.out.println(r + " is the reversed number" );
System.out.println( "Since they are equal " + temp + " is a palindrome number" );
}
else
{
System.out.println(temp + " is input number" );
System.out.println(r + " is the reversed number" );
System.out.println( "Since they are not equal " + temp + " is not a palindrome number" );
}
}
}
|
Salin selepas log masuk
Output 1:

Di sini, kerana 353 adalah sama apabila diterbalikkan, ia dianggap sebagai palindrom.
Output 2:

Di sini, kerana 234 kekal tidak sama apabila diterbalikkan, ia tidak dianggap sebagai palindrom.
2. Program untuk menyemak nombor palindrom menggunakan gelung While
Kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | import java.util.*;
public class PalindromeNumberExample {
public static void main(String[] args) {
int r=0, rem, num;
Scanner s = new Scanner(System.in);
System.out. print ( "Enter number that has to be checked:" );
num = s.nextInt();
int temp = num;
while ( num != 0 )
{
rem= num % 10;
r= r * 10 + rem;
num=num/10;
}
if (temp == r)
{
System.out.println(temp + " is input number" );
System.out.println(r + " is the reversed number" );
System.out.println( "Since they are equal " + temp + " is a palindrome number" );
}
else
{
System.out.println(temp + " is input number" );
System.out.println(r + " is the reversed number" );
System.out.println( "Since they are not equal " + temp + " is not a palindrome number" );
}
}
}
|
Salin selepas log masuk
Output 1:

Output 2:

3. Program untuk menyemak nombor palindrom menggunakan kaedah perpustakaan (untuk rentetan)
Kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import java.util.*;
public class PalindromeNumberExample {
public static void PalindromeCheck(String str)
{
String rev = new StringBuffer(str).reverse().toString();
if (str.equals(rev))
{
System.out.println( "input string is :" + str);
System.out.println( "Reversed string is :" + rev);
System.out.println( "Since the input and reversed string are equal, " + str + " is a palindrome" );
}
else
{
System.out.println( "input string is :" + str);
System.out.println( "Reversed string is :" + rev);
System.out.println( "Since the input and reversed string are not equal, " + str + " is not a palindrome" );
}
}
public static void main (String[] args)
{
PalindromeCheck( "MALAYALAM" );
}
}
|
Salin selepas log masuk
Output:

Di sini, rentetan input dihantar dalam program itu sendiri.
Untuk menyemak sama ada rentetan ialah palindrom, atur cara berikut juga digunakan.
Kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | import java.util.*;
public class PalindromeNumberExample {
public static void main(String args[])
{
String st, rev = "" ;
Scanner sc = new Scanner(System.in);
System.out.println( "Enter the string that has to be checked:" );
st = sc.nextLine();
int len = st.length();
for ( int i = len- 1; i >= 0; i-- )
rev = rev + st.charAt(i);
if (st.equals(rev))
{
System.out.println( "input string is :" + st);
System.out.println( "Reversed string is :" + rev);
System.out.println( "Since the input and reversed string are equal, " + st + " is a palindrome" );
}
else
{
System.out.println( "input string is :" + st);
System.out.println( "Reversed string is :" + rev);
System.out.println( "Since the input and reversed string are not equal, " + st + " is not a palindrome" );
}
}
}
|
Salin selepas log masuk
Output:

Kesimpulan
Sesuatu nombor dikatakan palindrom jika ia kekal sama walaupun ia diterbalikkan. Palindrom boleh disemak dalam rentetan juga. Beberapa nombor palindrom dan rentetan ialah MOM, MALAYALAM, DAD, LOL, 232, 1331, dsb. Dalam dokumen ini, beberapa aspek Palindrom diliputi, seperti algoritma, kaedah, pelaksanaan, dsb.
Atas ialah kandungan terperinci Palindrom di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!