Escriba un programa java para comprobar que un número es Armstrong o no utiliza la función.

programación


Enter a anumber
55
55 Number is not an ArmStrong.

Lo que he probado:

Java
package com.streamapi;

import java.util.Scanner;

public class ArmStrongNumber {


	public static void main(String[] args) 
	{
		Scanner scanner=new Scanner(System.in);
		
		System.out.println("Enter a anumber");
		int number = scanner.nextInt();
		
		boolean ArmStrong = ArmStrong(number);

		if(ArmStrong)
		{
			System.out.println(number +" Number is an ArmStrong.");
		}
		else
		{
			System.out.println(number +" Number is not an ArmStrong.");
		}
	}

	private static boolean ArmStrong(int number) {
		
		return false;
	}
}

Solución 1

Ya casi estás ahí. Todo lo que tienes que hacer ahora es completar la parte de cálculo. Ese es un problema simple que no debería llevarle mucho tiempo. Para ayudarte, te recordaré cuál es el cálculo.

Un número de Armstrong es un número que es igual a la suma de cada valor elevado a la potencia del número total de dígitos. Entonces, su cálculo tomará una cadena e iterará sobre cada carácter, convirtiéndolo en un número, elevándolo a la potencia de la longitud de la cadena. Sume el valor al total acumulado. Si llega al final del ciclo y el total coincide con la entrada, felicidades, encontró un número de Armstrong.

Hay algunas optimizaciones que puedes hacer. Si la entrada no es un número, rechácela. Si, durante el ciclo, su total acumulado excede el valor de entrada, definitivamente no es un número de Armstrong.

コメント

タイトルとURLをコピーしました