Što je Armstrong broj?
U Armstrongovom broju zbroj snage pojedinih znamenki jednak je samom broju.
Drugim riječima, vrijedi sljedeća jednadžba
xy… z = xn + yn+… + zn
n je broj digita u broju
Na primjer, ovo je 3-znamenkasti Armstrongov broj
370 = 33 + 73 + o3= 27 + 343 + 0= 370
Primjeri Armstrongovih brojeva
0, 1, 4, 5, 9, 153, 371, 407, 8208, etc.
Zapišimo ovo u program:
Java program za provjeru je li broj Armstrongov broj
// ChecktempNumber je Armstrong ili ne koristi while petljupaket com.guru99;javna klasa ArmstrongNumber {javna statička void glavna (String [] args) {int inputArmstrongNumber = 153; // Ulazni broj za provjeru armstrontaint tempNumber, znamenka, digitCubeSum = 0;tempNumber = inputArmstrongNumber;while (tempNumber! = 0){/ * Na svakoj iteraciji, ostatak se napaja brojem brojeva n* /System.out.println ("Trenutni broj je" + tempNumber);znamenka = tempNumber% 10;System.out.println ("Trenutna znamenka je" + znamenka);// zbroj kocki svake znamenke jednak je samom tempNumberudigitCubeSum = digitCubeSum + znamenka * znamenka * znamenka;System.out.println ("Trenutna digitCubeSum je" + digitCubeSum);tempNumber / = 10;}// provjerava zadani broj i cifraCubeSum jednak je ili nijeif (digitCubeSum == inputArmstrongNumber)System.out.println (inputArmstrongNumber + "je Armstrongov broj");drugoSystem.out.println (inputArmstrongNumber + "nije Armstrongov broj");}}Izlaz
Current Number is 153Current Digit is 3Current digitCubeSum is 27Current Number is 15Current Digit is 5Current digitCubeSum is 152Current Number is 1Current Digit is 1Current digitCubeSum is 153153 is an Armstrong Number
Java program za ispis Armstrongovih brojeva od 0 do 999
// ChecktempNumber je Armstrong ili ne koristi while petljupaket com.guru99;javna klasa ArmstrongNumber {javna statička void glavna (String [] args) {int tempNumber, znamenka, digitCubeSum;za (int inputArmstrongNumber = 0; inputArmstrongNumber <1000; inputArmstrongNumber ++) {tempNumber = inputArmstrongNumber;digitCubeSum = 0;while (tempNumber! = 0) {/ * Na svakoj iteraciji, ostatak se napaja brojem brojeva n* /znamenka = tempNumber% 10;// zbroj kocki svake znamenke jednak je samom tempNumberudigitCubeSum = digitCubeSum + znamenka * znamenka * znamenka;tempNumber / = 10;}// provjerava zadani broj i cifraCubeSum jednak je ili nijeif (digitCubeSum == inputArmstrongNumber)System.out.println (inputArmstrongNumber + "je Armstrongov broj");}}}Izlaz
0 is an Armstrong Number1 is an Armstrong Number153 is an Armstrong Number370 is an Armstrong Number371 is an Armstrong Number407 is an Armstrong Number