如何在单独的数字上划分数字以相互添加值

时间:2016-10-27 05:02:59

标签: c# string int

你可以帮我弄清楚如何计算这种方式,例如我有一些整数:

首先我需要条件

if(x <10)以避免要求计算单个数字

现在如果数字包含多于1位数需要以第二种方式计算,例如,我得到134如何将其分开以这种方式计算1 + 3 + 4将此值8附加到变量。

所以问题是如何分开数字

2 个答案:

答案 0 :(得分:1)

尝试

int num = 12345; 
       // holder temporarily holds the last digit of the number   
        int holder = 0;
        int sum = 0;
         while (num>0)
       {
          holder = num%10;
          num = num/10;
          sum += holder;

         }

         //sum would now hold the sum of each digit

答案 1 :(得分:0)

特别是这不是C#,但你可以循环你的号码,然后逐个数字。

// -- c
int num = 134;
int sum = 0;
while(num != 0) {
    ones_digit = num % 10;
    sum += ones_digit;
    num = (num - ones_digit) / 10;
}

printf("sum: %d", sum);

在javascript或python等高级语言中,访问数字也可以通过将整数转换为字符串,然后将每个char转换为int类型来完成。

// -- javascript
var num = 134;
var digits = num.toString().split("").map(parseInt);
console.log(digits);