繁体   English   中英

如何在不使用linq概念的情况下在c#中编写值数组的数字和数字

[英]how to write array of values sum of digits it self a number in c# without using linq concept

我有如下的价值观

int[] arr1 = new int[] {25, 47, 60,98};// Not Exactly

那怎么写

  1. 数字之和本身是一个数字,使用每个数字的数组值。

2.Total values数字之和本身就是一个数字

所以请给我任何我知道的想法来写单号

int sumDigits (long n) 
{

    int sum = 0, int sum1 = 0;

    while (n > 0) {
        sum = n % 10;
        n /= 10;
        sum1 += sum;
    }

    return sum1;
}

要么

public int SumDigits(int value)
{
    int sum = 0;
    while (value != 0)
    {
        int rem;
        value = Math.DivRem(value, 10, out rem);
        sum += rem;
    }
    return sum;
}

你的大部分工作都已完成。 您只需要创建一个循环遍历数组的循环,并为每个元素调用您的方法:

int[] arr2 = new int[arr1.Length];
for (int i = 0; i < arr1.Length; ++i)
    arr2[i] = SumDigits(arr1[i]);

编辑 :如果您想获得总数,您可以使用:

int total = 0;
for (int i = 0; i < arr1.Length; ++i)
    total += SumDigits(arr1[i]);

如果你需要两者,你可以明显地将两个循环结合起来。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM