programa Java para comprobar el número de Armstrong

En este ejemplo, vamos a leer un número entero positivo y comprobar si el número introducido es un número Armstrong o no.

número Una Armstrong es un número que es la suma de sus dígitos cada uno elevado a la potencia del número de dígitos. ejemplo For 0, 1, 153, 370, 371 y 407 son los números de Armstrong.

Ejemplo:

Input:
153
Output:
Armstrong
Explanation:
153 = (1*1*1)+(5*5*5)+(3*3*3)
153 = 1 + 125 + 27
153 = 153
Thus, 153 is an Armstrong number
Input:
371
Output:
Armstrong
Explanation:
371 = (3*3*3)+(7*7*7)+(1*1*1)
371 = 27 + 343 + 1
371 = 371
Thus, 371 is an Armstrong number

Programa:

//Java program to check whether number is armstrong or not.
import java.util.*;
class DigitsOpr {
private int num;
//function to get value of num
public void getNum(int x) {
num = x;
} //End of getNum()
//function to check armstrong
public boolean isArmstrong() {
int n, sum, d;
n = num; //keep value of num safe
sum = 0;
while (n > 0) {
d = n % 10;
sum += (d * d * d);
n /= 10;
}
if (sum == num) return true;
else return false;
}
}
public class armstrong {
public static void main(String[] s) {
DigitsOpr dig = new DigitsOpr();
int n;
Scanner sc = new Scanner(System.in);
//read number
System.out.print("Enter a positive integer number: ");
n = sc.nextInt();
dig.getNum(n);
if (dig.isArmstrong()) {
System.out.println(n + " is an Armstrong number.");
} else {
System.out.println(n + " is not an Armstrong number.");
}
}
}

salida:

RUN 1:
Enter a positive integer number: 153
153 is an Armstrong number.
RUN 2:
Enter a positive integer number: 407
407 is an Armstrong number.
RUN 3:
Enter a positive integer number: 417
417 is not an Armstrong number.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *