3 回答

TA貢獻1875條經驗 獲得超5個贊
您可以在 while 循環中使用,它將接受@GBlodgett 建議的任何數字
public static void main(String[] args) {
System.out.println(sumDigitsInNumber(546));
}
public static int sumDigitsInNumber(int number) {
int sum = 0;
while(number!=0)
{
sum = sum + number%10;
number = number/10;
}
return sum;//write your code here
}

TA貢獻1829條經驗 獲得超6個贊
在 Java 中 % 是模運算符。它提供了該部門的其余部分。如果在 Java 中除以整數值,任何余數都將丟失。
如果您像這樣添加一些臨時日志記錄:
public static int sumDigitsInNumber(int number) {
int sum = 0;
sum = sum + number % 10;
number = number / 10;
System.out.println(number);
sum = sum + number % 10;
number = number / 10;
System.out.println(number);
sum = sum + number % 10;
number = number / 10;
System.out.println(number);
return sum; // write your code here
您將獲得以下輸出:
54
5
0
15
546 % 10 = 6
546 / 10 = 54
54 % 10 = 4
54 / 10 = 5
5 % 10 = 5
5 / 10 = 0
總和 = 6 + 5 + 4 = 15
您的代碼最多只能使用三位數字。如果您將模數和除法運算的序列轉移到一個循環中,這將是一個通用的解決方案。

TA貢獻1785條經驗 獲得超4個贊
public class Solution {
public static void main(String[] args) {
System.out.println(sumDigitsInNumber(546));
}
public static int sumDigitsInNumber(int number) {
int sum = 0;
sum = sum + number%10; // number%10 = the last digit of 546 (= 6), sum = 0 + 6
number = number/10; // number = number whithout the last digit (54)
sum = sum + number%10; // number%10 = the last digit of 54 (= 4), sum = 0 + 6 + 4
number = number/10; // number = number whithout the last digit (5)
sum = sum + number%10; // number%10= the last digit of 5 (= 5), sum = 0 + 6 + 4 + 5
number = number/10; // number = number whithout the last digit (useless)
return sum;//sum = 6 + 5 + 4 = 15
}
添加回答
舉報