Programa de Número Armstrong em JAVA

Índice:

Anonim

O que é Armstrong Number?

Em um número Armstrong, a soma da potência dos dígitos individuais é igual ao próprio número.

Em outras palavras, a seguinte equação será verdadeira

xy… z = xn + yn+… + zn

n é o número de dígitos em número

Por exemplo, este é um número Armstrong de 3 dígitos

370 = 33 + 73 + o3= 27 + 343 + 0= 370

Exemplos de números de Armstrong

 0, 1, 4, 5, 9, 153, 371, 407, 8208, etc.

Vamos escrever isso em um programa:

Programa Java para verificar se um número é Armstrong Number

// ChecktempNumber é Armstrong ou não está usando loop whilepackage com.guru99;public class ArmstrongNumber {public static void main (String [] args) {int inputArmstrongNumber = 153; // Insira o número para verificar armstrongint tempNumber, dígito, digitCubeSum = 0;tempNumber = inputArmstrongNumber;while (tempNumber! = 0){/ * Em cada iteração, o resto é alimentado por thetempNumber de dígitos n* /System.out.println ("Número atual é" + tempNumber);dígito = tempNumber% 10;System.out.println ("O dígito atual é" + dígito);// soma dos cubos de cada dígito é igual ao próprio thetempNumberdigitCubeSum = digitCubeSum + dígito * dígito * dígito;System.out.println ("O digitCubeSum atual é" + digitCubeSum);tempNumber / = 10;}// verifique giventempNumber e digitCubeSum é igual ou nãoif (digitCubeSum == inputArmstrongNumber)System.out.println (inputArmstrongNumber + "é um número Armstrong");outroSystem.out.println (inputArmstrongNumber + "não é um número Armstrong");}}
Resultado
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

Programa Java para imprimir números Armstrong de 0 a 999

// ChecktempNumber é Armstrong ou não está usando loop whilepackage com.guru99;public class ArmstrongNumber {public static void main (String [] args) {int tempNumber, digit, digitCubeSum;for (int inputArmstrongNumber = 0; inputArmstrongNumber <1000; inputArmstrongNumber ++) {tempNumber = inputArmstrongNumber;digitCubeSum = 0;while (tempNumber! = 0) {/ * Em cada iteração, o resto é alimentado por thetempNumber de dígitos n* /dígito = tempNumber% 10;// soma dos cubos de cada dígito é igual ao próprio thetempNumberdigitCubeSum = digitCubeSum + dígito * dígito * dígito;tempNumber / = 10;}// verifique giventempNumber e digitCubeSum é igual ou nãoif (digitCubeSum == inputArmstrongNumber)System.out.println (inputArmstrongNumber + "é um número Armstrong");}}}
Resultado
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