﻿ Java - Check whether a number is an Armstrong Number or not

# Java: Check whether a number is an Armstrong Number or not

## Java Numbers: Exercise-28 with Solution

Write a Java program to check whether a number is an Armstrong Number or not.

Armstrong (Michael F. Armstrong) number is a number that is equal to the sum of cubes of its digits. For example 0, 1, 153, 370, 371 and 407 are the Armstrong numbers

Sample Solution:

Java Code:

``````import java.util.*;
public class solution {
public static boolean is_Amstrong(int n) {
int remainder, sum = 0, temp = 0;
temp = n;
while (n > 0) {
remainder = n % 10;
sum = sum + (remainder * remainder * remainder);
n = n / 10;
}
return sum == temp;
}

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Input an integer: ");
String input = scanner.nextLine();
int number = Integer.parseInt(input);
System.out.println("Is Armstrong number? "+is_Amstrong(number));
}
}
```
```

Sample Output:

```Input an integer:  153
Is Armstrong number? true
```

Flowchart: Java Code Editor:

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿

## Java: Tips of the Day

IsPowerOfTwo

Checks if a value is positive power of two.

To understand how it works let's assume we made a call IsPowerOfTwo(4).

As value is greater than 0, so right side of the && operator will be evaluated.

The result of (~value + 1) is equal to value itself. ~100 + 001 => 011 + 001 => 100. This is equal to value.

The result of (value & value) is value. 100 & 100 => 100.

This will value the expression to true as value is equal to value.

```public static boolean isPowerOfTwo(final int value) {
return value > 0 && ((value & (~value + 1)) == value);
}
```

Ref: https://bit.ly/3sA5d4I

We are closing our Disqus commenting system for some maintenanace issues. You may write to us at reach[at]yahoo[dot]com or visit us at Facebook