U ovom programu naučit ćete prikazivati sve armstrong brojeve između dva zadana intervala, niskog i visokog, na Javi.
Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja Java:
- Java while and do … while Loop
- Java if … else Izjava
- Java za petlju
Pozitivni cijeli broj naziva se Armstrongov broj reda n ako
abcd… = a n + b n + c n + d n +…
U slučaju Armstrongova broja od 3 znamenke, zbroj kocki svake znamenke jednak je samom broju. Na primjer:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 je Armstrongov broj.
Ovaj se program temelji na konceptu kako provjeriti je li cijeli broj Armstrongov broj ili nije.
Primjer: Armstrongovi brojevi između dva cijela broja
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 + " "); ) ) )
Izlaz
1634 8208 9474 54748 92727 93084
U gore navedenom programu provjerava se svaki broj između zadanog intervala od najvišeg do najnižeg.
Nakon svake provjere, broj znamenki i zbroj rezultata vraćaju se na 0.