June 22, 2022

Java Program to Check if Armstrong Number

In this post we’ll see a Java program to check if the passed number is an Armstrong number or not. A number is an Armstrong number if it is equal to the number you get by raising every digit of the number to the power of count of digits in the number and adding them.

Armstrong number example-

371 = 33 + 73 + 13 = 27 + 343 +1 = 371

Number of digits is 3 here so every digit is raised to the power of 3 and added. Since the calculated number is equal to the original number so 371 is an Armstrong number.

1634 = 14 + 6 4 + 34 + 44 = 1 + 1296 + 81 + 256 = 1634

Java code to check if number Armstrong number or not

```import java.util.Scanner;

public class ArmstrongNumber {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Please enter a number : ");
int number = sc.nextInt();

System.out.println("Is " + number + " an Armstrong number- " + checkIfArmstrong(number));
sc.close();
}

private static boolean checkIfArmstrong(int number){
// Converting to string and calculating length
int numLength = (number+"").length();
int temp = number;
int sum = 0;
while(temp != 0 ){
int remainder = temp % 10;
sum = sum + (int)Math.pow(remainder, numLength);
temp = temp/10;
}
if(number == sum){
return true;
}else{
return false;
}
}
}
```
Output
```Please enter a number :
371
Is 371 an Armstrong number- true

1634
Is 1634 an Armstrong number- true