请计算0~1000中各个位的数字之和。例如:数字932,则各个位的数字之和为14
1 package com.gsa.day3; 2 3 public class HomeWorkSample_02 { 4 5 public static void main(String[] args) { 6 /** 7 * 请计算0~1000中各个位的数字之和。例如:数字932,则各个位的数字之和为14 8 * 1. 嵌套循环 9 * 2. 每个数字长度不一样, 数字的长度需要计算 10 * 3. 根据每个数字的长度来求各个位数上的和, 接着去判断数字相加之和是否为14 11 */ 12 for (int i = 0; i < 1000; i++) { 13 int a = i; //让a变量来分别存储0~1000中各个数字 14 int j = 0; //记录0~1000中各个数字的长度 15 int b = 0; //记录0~1000中各个数字位数相加的和 16 do { 17 j++; 18 a = a / 10; 19 if (a == 0) { 20 break; 21 } 22 } while(true); 23 24 int m = i; 25 for (int n = 0; n < j; n++) { //得到0~1000之间数字的位数, 然后通过遍历位数的长度来计算各个位数相加的和 26 b = b + m % 10; 27 m = m / 10; 28 } 29 if (b == 14) { 30 System.out.println("数字 " + i + " 的各个位数之和 : 14"); 31 } 32 } 33 } 34 35 }
浙公网安备 33010602011771号