阿姆斯特朗数字是一个等于其各个数字的立方之和的数字。例如,153是Armstrong数,例如-
153 = (1)3 + (5)3 + (3)3 153 1 + 125 + 27 154 153
1. Take integer variable Arms. 2. Assign a value to the variable. 3. Split all digits of Arms. 4. Find cube-value of each digit. 5. Add all cube-values together. 6. Save the output to Sum variable. 7. If Sum equals to Arms print Armstrong Number. 8. If Sum does not equal to Arms print Not Armstrong Number.
import java.util.Scanner; public class ArmstrongBetweenTwoNumbers { public static void main(String args[]){ int num1, num2; Scanner sc = new Scanner(System.in); System.out.println("Enter the first number ::"); num1 = sc.nextInt(); System.out.println("Enter the second number ::"); num2 = sc.nextInt(); for (int i = num1; i<num2; i++){ int check, rem, sum = 0; check = i; while(check != 0) { rem = check % 10; sum = sum + (rem * rem * rem); check = check / 10; } if(sum == i){ System.out.println(""+i+" 是一个阿姆斯特朗数。"); } } } }
输出结果
Enter the first number:: 1 Enter the second number:: 500 1 是一个阿姆斯特朗数。 153 是一个阿姆斯特朗数。 370 是一个阿姆斯特朗数。 371 是一个阿姆斯特朗数。 407 是一个阿姆斯特朗数。