This post shows how you can generate and display Armstrong numbers in Java with in the given range. A number is an Armstrong number if it is equal to the sum of its digit raised to the power of count of digits in the number. For 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
Display Armstrong numbers within the given range - Java Program
import java.util.Scanner; public class ArmstrongNumber { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter start number for displaying Armstrong numbers - "); int start = sc.nextInt(); System.out.println("Enter end number for displaying Armstrong numbers - "); int end = sc.nextInt(); System.out.print("Armstrong numbers with in " + start + " and " + end + "- "); for(int i = start; i <= end; i++){ if(checkIfArmstrong(i)){ System.out.print(i + " "); } } 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
Enter start number for displaying Armstrong numbers - 10 Enter end number for displaying Armstrong numbers - 10000 Armstrong numbers with in 10 and 10000- 153 370 371 407 1634 8208 9474
That's all for the topic Display Armstrong Numbers in Java. If something is missing or you have something to share about the topic please write a comment.
You may also like
No comments:
Post a Comment