Program Java pentru a verifica dacă un număr este palindrom sau nu

În acest program, veți învăța să verificați dacă un număr este palindrom sau nu în Java. Acest lucru se face folosind bucla for și while.

Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele despre următoarele subiecte de programare Java:

  • Java dacă … altfel Declarație
  • Java while și do … while Buclă
  • Java pentru buclă

Exemplul 1: Program pentru a verifica Palindrome folosind bucla 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."); ) )

Ieșire

 121 este un număr palindrom.

În acest program,

  • În primul rând, valoarea dată a numărului (num) este stocată într-o altă variabilă întreagă, originalInteger. Acest lucru se datorează faptului că trebuie să comparăm valorile numărului inversat și al numărului original la sfârșit.
  • Apoi, o buclă while este utilizată pentru a face o buclă prin num până când este egal cu 0.
    • La fiecare iterație, ultima cifră de num este stocată în rest.
    • Apoi, restul se adaugă la inversat Întreg, astfel încât să fie adăugat la următoarea valoare a locului (înmulțirea cu 10).
    • Apoi, ultima cifră este eliminată din num după împărțire cu 10.
  • În cele din urmă, sunt comparate reversedInteger și originalInteger. Dacă este egal, este un număr palindrom. Dacă nu, nu este.

Iată pașii de execuție care au loc:

Pași de execuție a palindromului
num num! = 0 rest reversedInteger
121 Adevărat 1 0 * 10 + 1 = 1
12 Adevărat 2 1 * 10 + 2 = 12
1 Adevărat 1 12 * 10 + 1 = 121
0 fals - 121

Exemplul 2: Program pentru a verifica Palindrome folosind bucla 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."); ) )

Ieșire

 11221 nu este un palindrom.

În programul de mai sus, bucla for este utilizată în locul unei bucle while.

La fiecare iterație, num /= 10se execută și num !=0se verifică starea .

Articole interesante...