Σε αυτό το πρόγραμμα, θα μάθετε να εμφανίζετε όλους τους δυναμικούς αριθμούς μεταξύ δύο δεδομένων διαστημάτων, χαμηλού και υψηλού, στην Java.
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες εφαρμογές προγραμματισμού Java:
- Java ενώ και κάνουμε… ενώ Loop
- Java αν… αλλιώς Δήλωση
- Java για βρόχο
Ένας θετικός ακέραιος αριθμός ονομάζεται αριθμός Armstrong της τάξης n εάν
abcd… = a n + b n + c n + d n +…
Στην περίπτωση ενός αριθμού Armstrong 3 ψηφίων, το άθροισμα των κύβων κάθε ψηφίου είναι ίσο με τον ίδιο τον αριθμό. Για παράδειγμα:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 είναι ένας αριθμός Armstrong.
Αυτό το πρόγραμμα βασίζεται στην ιδέα του πώς να ελέγξετε αν ένας ακέραιος αριθμός είναι αριθμός Armstrong ή όχι.
Παράδειγμα: Αριθμοί Armstrong μεταξύ δύο ακεραίων
public class Armstrong ( public static void main(String() args) ( int low = 999, high = 99999; for(int number = low + 1; number < high; ++number) ( int digits = 0; int result = 0; int originalNumber = number; // number of digits calculation while (originalNumber != 0) ( originalNumber /= 10; ++digits; ) originalNumber = number; // result contains sum of nth power of its digits while (originalNumber != 0) ( int remainder = originalNumber % 10; result += Math.pow(remainder, digits); originalNumber /= 10; ) if (result == number) System.out.print(number + " "); ) ) )
Παραγωγή
1634 8208 9474 54748 92727 93084
Στο παραπάνω πρόγραμμα, ελέγχεται κάθε αριθμός μεταξύ του δεδομένου διαστήματος υψηλού και χαμηλού.
Μετά από κάθε έλεγχο, ο αριθμός των ψηφίων και το αποτέλεσμα του αθροίσματος επαναφέρονται στο 0.