Как найти сумму цифр числа в c
Перейти к содержимому

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

  • автор:

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

Подскажите алгоритм нахождения суммы цифр числа (например, восьмизначного).

Отслеживать

157 2 2 серебряных знака 12 12 бронзовых знаков

задан 26 сен 2011 в 16:51

1,297 12 12 золотых знаков 36 36 серебряных знаков 62 62 бронзовых знака

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Первое — постоянно берем остаток от деления на 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 золотых знаков 43 43 серебряных знака 70 70 бронзовых знаков

Количество и сумма цифр числа на 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 веток ответов

Найти сумму цифр числа n

Author24 — интернет-сервис помощи студентам

Найти сумму делитей. Подсчитать сумму цифр числа. Количество цифр
Друзья,подскажите пожалуйста где ошибка?Цикл не считает сумму делителей числа. #include.

Даны натуральные числа N и M(N > M).Найти сумму М последних цифр числа N.
Прошу помочь решить задачки!:(очень нужно (Билет №23) Даны натуральные числа N и M(N >.

2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446

Лучший ответ

Сообщение было отмечено как решение

Решение

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
#include using namespace std; int main() { int n; int sum=0; cout  "please, enter n = "; cin >> n; while (n!=0) { sum += n%10; n /= 10; } cout  "sum = "  sum  endl; return 0; }

Регистрация: 17.06.2009
Сообщений: 7

ЦитатаСообщение от Monte-Cristo Посмотреть сообщение

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
#include using namespace std; int main() { int n; int sum=0; cout  "please, enter n = "; cin >> n; while (n!=0) { sum += n%10; n /= 10; } cout  "sum = "  sum  endl; return 0; }

А МОЖЕТЕ ОБЪЯСНИТЬ ЭТО
sum += n%10;
n /= 10;
>
И ЧТО ЗНАЧИТ ЗНАК % ЗДЕСЬ
308 / 161 / 11
Регистрация: 07.06.2009
Сообщений: 538
остаток от деления n на 10
Регистрация: 17.06.2009
Сообщений: 7
а для чего остаток находить здесь?
Заказ софта
343 / 188 / 21
Регистрация: 26.05.2009
Сообщений: 863

Это значит вот что:

sum += n%10; //Прибавить к переменной sum остаток от деления n на 10. n /= 10; //То же самое, что и: n = n / 10;

Оператор % определяет остаток от деления. Пример:

result = 201%2; //После этого выражения переменная result будет равна 1. Т.к остаток от деления 201 на 2 равен еденице !

Эксперт С++

2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675

ЦитатаСообщение от BANDERIVETS Посмотреть сообщение

а для чего остаток находить здесь?
Тем самым мы фактически получаем крайнюю правую цифру числа.
Регистрация: 22.10.2020
Сообщений: 7

Что-то не сходится кажется.Например если мы вводим число 3 мы должны получить сумму его цифр то есть 1+2+3=6 ,а по факту получается что-то не то.

7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
Timurango, в числе 3 одна цифра - это цифра 3
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Найти сумму цифр числа.
Дано натуральное число N. Найти сумму цифр числа. Предусмотреть проверку корректности ввода данных.

Найти сумму цифр числа
Вообщем все обстоит примерно так : #include <iostream> #include <math.h> using namespace std;.

Найти сумму цифр числа 2^34
^=32768,сумма цифр этого числа равна 3+2+7+6+8=26 Какова сумма цифр числа ^ c++

Найти сумму цифр числа
Помогите пожалуйста написать 2 легкие програмки в C++. Сам я пока не очень силен в.

Или воспользуйтесь поиском по форуму:

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();
>

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

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