Сумма цифр в C # - PullRequest
       116

Сумма цифр в C #

35 голосов
/ 26 января 2009

Какая самая быстрая и легкая для чтения реализация вычисления суммы цифр?

т.е. Дано число: 17463 = 1 + 7 + 4 + 6 + 3 = 21

Ответы [ 17 ]

0 голосов
/ 19 мая 2017

Некоторое время назад я должен был найти сумму в цифрах чего-либо. Я использовал код Мухаммеда Хасана Хана, однако он продолжал возвращать правильное число в виде повторяющегося десятичного числа, то есть, когда сумма цифр составляла 4, я получал 4.44444444444444 и т. Д. Поэтому я отредактировал его, получая правильную сумму цифр каждый раз с помощью этого кода:

 double a, n, sumD;
 for (n = a; n > 0; sumD += n % 10, n /= 10);
 int sumI = (int)Math.Floor(sumD);

где a - число, для которого требуется сумма цифр, n - двойное число, используемое для этого процесса, sumD - сумма цифр в двойном числе, а sumI - сумма цифр в целых числах, поэтому правильная сумма цифр.

0 голосов
/ 05 сентября 2016
#include <stdio.h>

int main (void) {

    int sum = 0;
    int n;
    printf("Enter ir num ");
    scanf("%i", &n);

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

    printf("Sum of digits is %i\n", sum);

    return 0;
}
0 голосов
/ 18 августа 2016
while(ino!=0 )
{
  digit=(ino%10));
  printf("%d",digit);
  ino=ino/10;   
}           

для такого массива i / p: 10 25 712 65

это не сработает, вы должны попробовать другую логику, если кто-то ее получил, пожалуйста, опубликуйте ее для добавления элементов массива.

0 голосов
/ 15 апреля 2016
int j, k = 1234;
for(j=0;j+=k%10,k/=10;);
0 голосов
/ 05 января 2018
int n = 17463; int sum = 0;
for (int i = n; i > 0; i = i / 10)
{
sum = sum + i % 10;
}
Console.WriteLine(sum);
Console.ReadLine();
0 голосов
/ 30 мая 2018
static int SumOfDigits(int num)
{
    string stringNum = num.ToString();
    int sum = 0;
    for (int i = 0; i < stringNum.Length; i++)
    {
      sum+= int.Parse(Convert.ToString(stringNum[i]));

    }
    return sum;
}
0 голосов
/ 10 августа 2015

Самый простой и легкий способ - использовать циклы, чтобы найти сумму цифр .

int sum = 0;
int n = 1234;

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