Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 5.00
Versus666
0 / 0 / 0
Регистрация: 11.11.2010
Сообщений: 22
#1

Сумма цифр натурального числа - C++

21.11.2010, 21:28. Просмотров 1592. Ответов 7
Метки нет (Все метки)

Рассмотрим произвольное натуральное число и найдём сумму его цифр,затем сумму цифр полученного числа и так далее, пока не получиться однозначное число. Это числа назовём числовым корнем. Например возьмём число 1234567. Сумма его цифр равна 28. Сумма цифр полученного числа равна 10. Дальше сумма равна 1. Помогите написать такую программу...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2010, 21:28     Сумма цифр натурального числа
Посмотрите здесь:

C++ Сумма цифр натурального числа
Сумма цифр натурального числа посредством рекурсии C++
Составить программу,которая для любого натурального числа печатает количество цифр в записи этого числа C++
Сумма каких-либо двух цифр заданного трехзначного натурального числа N равна третьей цифре. C++
Найдите такие натуральные числа, чтобы сумма их цифр, а также сумма цифр следующего за ним числа делилась на 7 C++
C++ Найти простые числа, чтобы сумма их цифр, а также сумма цифр следующего за ним числа, делилась на 7
Сумма цифр натурального числа C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
21.11.2010, 22:43     Сумма цифр натурального числа #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<stdio.h>
int func(int a)
{
    while(a>9)
    {
        int temp=0;
        while(a>0)
        {
            temp+=a%10;
            a/=10;
        }
        a=temp;
    }
    return a;
}
void main ()
{
    int a=1234567;
    a=func(a);
    printf("%d", a);
 
}
Versus666
0 / 0 / 0
Регистрация: 11.11.2010
Сообщений: 22
22.11.2010, 00:11  [ТС]     Сумма цифр натурального числа #3
valeriikozlov, вы меня не так поняли)) Произвольное число нужно ввести самому и чтобы после завершения операции программа не закрывалась сама...
MILAN
883 / 777 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
22.11.2010, 00:14     Сумма цифр натурального числа #4
Цитата Сообщение от Versus666 Посмотреть сообщение
чтобы после завершения операции программа не закрывалась сама...
Используй getch()
Versus666
0 / 0 / 0
Регистрация: 11.11.2010
Сообщений: 22
22.11.2010, 00:16  [ТС]     Сумма цифр натурального числа #5
Да я оч слаб в программировании и постоянно когда использую эту функцию вылетает какая-нибудь ошибка, вот и обращаюсь за помощью))
easybudda
Эксперт С++
9440 / 5463 / 925
Регистрация: 25.07.2009
Сообщений: 10,485
22.11.2010, 01:26     Сумма цифр натурального числа #6
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
    
int digits_sum(int num) { return ( num ) ? num % 10 + digits_sum(num / 10) : 0; }
int number_root(int num) { return ( num > 9 ) ? number_root(digits_sum(num)) : num; }
 
int main(void){
    int num;
    
    printf("For finish enter 0...\n");
    while ( printf("Number: ") && scanf("%d", &num) == 1 && num )
        printf("Root: %d\n", number_root(num));
    
    return 0;
}
Versus666
0 / 0 / 0
Регистрация: 11.11.2010
Сообщений: 22
23.11.2010, 12:12  [ТС]     Сумма цифр натурального числа #7
А можно вывести на экран ещё и промежуточные числа получившиеся в результате сложения а не только конечный ответ?

Добавлено через 16 часов 10 минут
Может кть-нибудь так сделать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2010, 12:28     Сумма цифр натурального числа
Еще ссылки по теме:

C++ Определить функцию для расчета суммы цифр натурального числа. Входной параметр – число. Возвращаемое значение – сумма.
Определить функцию для расчета суммы цифр натурального числа. Входной параметр – число. Возвращаемое значение – сумма C++
Определить для числа: является ли сумма его цифр двузначным числом; больше ли сумма его цифр числа "а" C++
Проверить условие: сумма цифр заданного числа N превосходит произведение цифр этого же числа на 1 C++
Определить, в какой из систем счисления сумма всех цифр натурального числа имеет наибольшее значение C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
easybudda
Эксперт С++
9440 / 5463 / 925
Регистрация: 25.07.2009
Сообщений: 10,485
23.11.2010, 12:28     Сумма цифр натурального числа #8
Цитата Сообщение от Versus666 Посмотреть сообщение
Может кть-нибудь так сделать?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
        
int digits_sum(int num) { return ( num ) ? num % 10 + digits_sum(num / 10) : 0; }
/* int number_root(int num) { return ( num > 9 ) ? number_root(digits_sum(num)) : num; } */
void print_roots(int num){
    printf("%d\n", num);
    if ( num > 9 )
        print_roots(digits_sum(num));
}
 
int main(void){
    int num;
    
    printf("For finish enter 0...\n");
    while ( printf("Number: ") && scanf("%d", &num) == 1 && num ){
        printf("Roots:\n");
    print_roots(digits_sum(num));
    }
        
    return 0;
}
Yandex
Объявления
23.11.2010, 12:28     Сумма цифр натурального числа
Ответ Создать тему
Опции темы

Текущее время: 04:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru