Перейти к содержимому

Как найти сумму цифр числа в c

  • автор:

Сумма цифр числа

Первое — постоянно берем остаток от деления на 10. Делим на 10, пока наше число не превратится в 0:

while (number) < sum += number % 10; number /= 10; >

Второе — перевести число в строку и пройтись циклом по всей строке, суммируя при этом цифры:

sprintf(str, "%d", number); for(int i = 0; i < strlen(str); i++) sum += str[i] - '0'; 

Отслеживать
11.5k 8 8 золотых знаков 42 42 серебряных знака 69 69 бронзовых знаков
ответ дан 26 сен 2011 в 17:01
Sergii Kozlov Sergii Kozlov
2,468 16 16 серебряных знаков 13 13 бронзовых знаков
i < strlen(str) - не надо так делать, длина вычисляется каждый раз. 1 июл 2016 в 7:27

  • алгоритм
  • c++
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.9.3159

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

C++ Как найти сумму цифр числа?

Введем число
Инвентируем его в текст. получилось множество!
присваиваем целочисленной переменной нулевое значение этого множества (А) инвентированного опять в число!
Прогоняем цикл от 1 до конец числа
А =+ прибовляем инвентированное символьное число в целое
Конец цикла
Выводим А на экран!

Подсказка: кроме простого деления (/) существует деление с отбрасыванием того, что слева от запятой (%, зависит от языка)

Например:
45 / 10 = 4,5
45 % 10 = 5

Дальше сам додумаешься.

int n = 111111;
int sum = 0;
while (n)
<
sum += n % 10;
n /= 10;
>

#include
#include
main()
int n, count, baggage, m;
printf("Vvedite celoye chislo\n");
scanf("%d",&n);
count=0;
while(n!=0)
< m=n;
m%=10;
count+=m;
n/=10;
>
printf("V chisle %d summa cifr ravna %d", n, count);
getch();
>

Количество и сумма цифр числа на C++

Подсчет количества цифр целого числа Примеры:
123 – 3 цифры.
45677 – 5 цифр. Подход к решению такой:
1. если число отрицательное – то меняем знак;
2. заводим счетчик, изначально равный нулю;
3. делим число на 10 без остатка, например при делении 123 на 10 получится 12. Таким образом, мы “отбросили” младший разряд (цифру);
4. увеличиваем счетчик (ведь одну цифру отбросили);
5. если число больше нуля – переходим на п. 2.
6. счетчик содержит результат работы программы. Исходный код программы:

#include int digitsCount(int n) < if (n < 0) < n = -n; >int count = 0; while (n != 0) < n /= 10; count++; >return count; > int main()

Вычисление суммы цифр числа можно сделать так: 1) Преобразовать число в строку (различными способами) и найти сумму символов в ней; 2) Использовать операцию получения остатка от деления деления на 10 (вернет младший разряд числа) и целочисленного деления на 10 (эквивалентна сдвигу числа вправо) – такой подход уже использовался выше при вычислении количества цифр.

int digitsSum(int n) < int sum = 0; while (n != 0) < sum += n % 10; n /= 10; >return sum; >

Просмотр 0 веток ответов

Как найти сумму цифр числа в c

вообще полностью задача выглядит так определить сумму и количество цифр его сотовляюжих, кол-во я нашел, а вот с суммой проблема
вот что пробовал писать:

int main(int argc, char *argv[]) >a; for (c=0;a>10;c++) a=a/10; c=c+1; cout>g; for (h=0;g>10;h+g) g=g/10; cout

памагите кто небудь разобраться со втарой частию! найти сумму чисел состовляющих числа.

Модератор: тег CODE

Последний раз редактировалось MaTBeu; 26.12.2008 в 17:44 .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

https://kodirovanie.vyvod-iz-zapoya-na-domu-moskva-snp.ru/