Σε αυτό το πρόγραμμα, θα μάθετε να ελέγχετε αν ένας αριθμός είναι palindrome ή όχι στην Java. Αυτό γίνεται χρησιμοποιώντας βρόχο για και κατά τη διάρκεια.
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες εφαρμογές προγραμματισμού Java:
- Java αν… αλλιώς Δήλωση
- Java ενώ και κάνουμε… ενώ Loop
- Java για βρόχο
Παράδειγμα 1: Πρόγραμμα για έλεγχο Palindrome χρησιμοποιώντας while loop
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."); ) )
Παραγωγή
Το 121 είναι ένας αριθμός palindrome.
Σε αυτό το πρόγραμμα,
- Πρώτον, η τιμή του δεδομένου αριθμού (num) αποθηκεύεται σε μια άλλη ακέραια μεταβλητή, originalInteger. Αυτό συμβαίνει επειδή, πρέπει να συγκρίνουμε τις τιμές του αντίστροφου αριθμού και του αρχικού αριθμού στο τέλος.
- Στη συνέχεια, χρησιμοποιείται ένας βρόχος while για να περάσετε από τον αριθμό μέχρι να είναι ίσος με 0.
- Σε κάθε επανάληψη, το τελευταίο ψηφίο του αριθμού αποθηκεύεται στο υπόλοιπο.
- Στη συνέχεια, το υπόλοιπο προστίθεται στο reversedInteger έτσι ώστε να προστίθεται στην τιμή της επόμενης θέσης (πολλαπλασιασμός επί 10).
- Στη συνέχεια, το τελευταίο ψηφίο αφαιρείται από τον αριθμό μετά τη διαίρεση με το 10.
- Τέλος, συγκρίνονται το reversedInteger και το originalInteger. Αν είναι ίσο, είναι ένας αριθμός palindrome. Εάν όχι, δεν είναι.
Ακολουθούν τα βήματα εκτέλεσης που πραγματοποιούνται:
Βήματα εκτέλεσης Palindromeαριθ | αριθ. = 0 | υπόλοιπο | ΑντιστρέπεταιInteger |
---|---|---|---|
121 | αληθής | 1 | 0 * 10 + 1 = 1 |
12 | αληθής | 2 | 1 * 10 + 2 = 12 |
1 | αληθής | 1 | 12 * 10 + 1 = 121 |
0 | ψευδής | - | 121 |
Παράδειγμα 2: Πρόγραμμα ελέγχου Palindrome χρησιμοποιώντας βρόχο
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."); ) )
Παραγωγή
Το 11221 δεν είναι παλινδρομή.
Στο παραπάνω πρόγραμμα, χρησιμοποιείται για βρόχο αντί για βρόχο.
Σε κάθε επανάληψη, num /= 10
εκτελείται και num !=0
ελέγχεται η κατάσταση.