Čo je Armstrongovo číslo?
V Armstrongovom čísle sa súčet výkonov jednotlivých číslic rovná číslu samotnému.
Inými slovami bude platiť nasledujúca rovnica
xy… z = xn + yn+… + zn
n je počet číslic v počte
Napríklad toto je 3-miestne Armstrongovo číslo
370 = 33 + 73 + o3= 27 + 343 + 0= 370
Príklady čísel Armstronga
0, 1, 4, 5, 9, 153, 371, 407, 8208, etc.
Napíšme to do programu:
Program Java na kontrolu, či je číslo Armstrongovo číslo
// ChecktempNumber je Armstrong alebo nepoužíva cyklus whilebalíček com.guru99;verejná trieda ArmstrongNumber {public static void main (String [] args) {int inputArmstrongNumber = 153; // Zadajte číslo, aby ste skontrolovali armstrongint tempNumber, digit, digitCubeSum = 0;tempNumber = inputArmstrongNumber;while (tempNumber! = 0){/ * Pri každej iterácii je zvyšok napájaný z thetempNumber of digits n* /System.out.println ("Aktuálne číslo je" + tempNumber);digit = tempNumber% 10;System.out.println ("Aktuálna číslica je" + číslica);// súčet kociek každej číslice sa rovná thetempNumber sámdigitCubeSum = digitCubeSum + číslica * číslica * číslica;System.out.println ("Aktuálny digitCubeSum je" + digitCubeSum);tempNumber / = 10;}// skontrolovať giventempNumber a digitCubeSum sa rovná alebo nieif (digitCubeSum == inputArmstrongNumber)System.out.println (inputArmstrongNumber + "je Armstrongovo číslo");inakSystem.out.println (inputArmstrongNumber + "nie je Armstrongovo číslo");}}Výkon
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
Program Java na tlač čísel Armstrong od 0 do 999
// ChecktempNumber je Armstrong alebo nepoužíva cyklus whilebalíček com.guru99;verejná trieda ArmstrongNumber {public static void main (String [] args) {int tempNumber, digit, digitCubeSum;pre (int inputArmstrongNumber = 0; inputArmstrongNumber <1000; inputArmstrongNumber ++) {tempNumber = inputArmstrongNumber;digitCubeSum = 0;while (tempNumber! = 0) {/ * Pri každej iterácii je zvyšok napájaný z thetempNumber of digits n* /digit = tempNumber% 10;// súčet kociek každej číslice sa rovná thetempNumber sámdigitCubeSum = digitCubeSum + číslica * číslica * číslica;tempNumber / = 10;}// skontrolovať giventempNumber a digitCubeSum sa rovná alebo nieif (digitCubeSum == inputArmstrongNumber)System.out.println (inputArmstrongNumber + "je Armstrongovo číslo");}}}Výkon
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