Na teoria dos números, um número narcisista, um número de Armstrong é nomeado após Michael F. Armstrong é um número que é a soma de seus próprios dígitos, cada um elevado à potência do número de dígitos. Neste número Armstrong em artigo, vamosaprenda como verificar se um determinado número é um número de Armstrong ou não.
Os tópicos discutidos neste artigo são:
O que é um número Armstrong?
A soma da potência dos dígitos individuais é igual ao próprio número. Entre 1 e 1000, existem cinco números Armstrong. Eles são: - 1, 153, 370, 371, 407. Aqui está a equação geral.
abcd ... = an+ bn+ cn+ dn+ ...
Vamos verificar o conceito com alguns exemplos.
Exemplo 1: 370
3 * 3 * 3 + 7 * 7 * 7 + 0 * 0 * 0 = 27 + 343 + 0 = 370
Exemplo 2: 407
4 * 4 * 4 + 0 * 0 * 0 + 7 * 7 * 7 = 64 + 0 + 343 = 407
java system.exit (1)
Espero que você tenha entendido bem o conceito agora. Continuando, vamos ver comoverifique se um determinado número é um número Armstrong ou não em Java.
Programa Java para verificar um número Armstrong
Você pode checarse um determinado número é um número Armstrong ou não em Java de duas maneiras:
- Usando o loop ‘while’
- Loop ‘for’ Java
Usando 'enquanto' ciclo
No caso de um número Armstrong de 3 dígitos, a soma dos cubos de cada dígito é igual ao próprio número. O programa de exemplo abaixo verifica se um determinado número de 3 dígitos é ou não um número Armstrong.
pacote MeuPacote public class ArmstrongNumber {public static void main (String [] args) {int num = 371, originalNum, resto, resultado = 0 originalNum = num enquanto (originalNum! = 0) {resto = originalNum% 10 resultado + = Matemática. pow (resto, 3) originalNum / = 10} if (resultado == num) System.out.println (num + 'é um número Armstrong.') else System.out.println (num + 'não é um número Armstrong. ')}}
Resultado : 371 é um número Armstrong.
As etapas listadas no código são:
- A primeira linha do loop while extrai o último dígito (restante) do número especificado
- A segunda linha calcula o cubo do último dígito retirado da etapa anterior e adiciona-o ao resultado
- Então, o último dígito é removido de originalNum depois da divisão por 10
Usando 'para ' ciclo
pacote MyPackage public class Armstrong {public static void main (String [] args) {int number = 9474, originalNumber, remainder, result = 0, n = 0 originalNumber = number for (originalNumber! = 0 originalNumber / = 10) {n ++} originalNumber = number for (originalNumber! = 0 originalNumber / = 10) {resto = originalNumber% 10 result + = Math.pow (resto, n)} if (result == number) System.out.println (number + 'é um Número Armstrong. ') Else System.out.println (número +' não é um número Armstrong. ')}}
Resultado:
9474 é um número Armstrong.
Aqui, temos dois loops for. O primeiro calcula o número de dígitos de um determinado número. O segundo loop verifica se o número fornecido é um número de Armstrong ou não.
Com isso, chegamos ao final deste artigo. Espero que o conteúdo explicado acima agregue valor ao seu conhecimento de Java. Continue lendo, continue explorando!
Confira o pela Edureka, uma empresa de aprendizagem online confiável com uma rede de mais de 250.000 alunos satisfeitos espalhados por todo o mundo. Estamos aqui para ajudá-lo em todas as etapas de sua jornada, para nos tornarmos, além dessas perguntas da entrevista java, um currículo que é projetado para estudantes e profissionais que desejam ser um desenvolvedor Java.
Tem alguma questão para nós? Mencione isso na seção de comentários deste blog “Número Armstrong em Java” e entraremos em contato com você o mais breve possível.