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

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

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

Вывести сумму цифр числа - C++

17.11.2011, 16:41. Просмотров 1844. Ответов 20
Метки нет (Все метки)

смысл задачи такой : мы вводим двузначное число ,нужно вывести сумму его цифр ,если сумма цифр снова двузначное число ,то снова складываем эти цифры ,и так до тех пор ,пока не получится однозначное цисло .И еще ,нужно вывести количество операций которые мы выполняем при этом вот пример : вводим 10 выводится 1 0
вводим 88 выводится 7 2

большая просьба решить через string ,
 Комментарий модератора 
Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.11.2011, 16:41     Вывести сумму цифр числа
Посмотрите здесь:

Вывести сумму цифр числа - C++
Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа.

Вывести на экран сумму цифр данного числа - C++
1.Вводятся двузначное чиcло. Вывести на экран сумму цифр данного числа.

Вывести сумму цифр каждого из делителей числа - C++
добрый день! программа должна выводить сначала все делители числа n, затем для каждого из делителей сумму его цифр. вот мой код: ...

Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа - C++
Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа.(используя указатели и функции)

Вывести все 6-ти значные числа, которые делятся без остатка на сумму своих цифр - C++
Вывести все 6-ти значные числа, которые делятся без остатка на сумму своих цифр. подсчитать кол-во Решаю ее в таком ключе, подскажите,...

Используя арифметические операции, определить и вывести сумму цифр трехзначного целого числа k (100<=k<=255) - C++
1)осуществить: - проверку корректности по типу вводимых значений; - проверку диапазонов вводимых значений. -Используя...

Подпрограммы: Из заданного числа отняли сумму его цифр. Из результата опять отняли сумму его цифр и т.д. Через сколько таких действий получится ноль? - C++
Составить программу решения задачи с использованием подпрограмм. Из заданного числа отняли сумму его цифр. Из результата опять отняли...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
neske
1479 / 846 / 75
Регистрация: 26.03.2010
Сообщений: 2,904
17.11.2011, 16:42     Вывести сумму цифр числа #2
а к чему тут стринг то?
im_Kudrik
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 20
17.11.2011, 17:00  [ТС]     Вывести сумму цифр числа #3
такое задание

Добавлено через 12 минут
так что с задачей?
mc.Duck
Заблокирован
17.11.2011, 18:12     Вывести сумму цифр числа #4
im_Kudrik, вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <string>
#include <clocale>
using namespace std;
 
int main(void)
{
    setlocale(LC_ALL,"Russian");
    char chom[]="";
    string chomp="";
    cout<<"Ââåäèòå ÷èñëî: ";cin>>chom;
    int *mass=new int[strlen(chom)];
    int len=strlen(chom);
    for(int i=0;i<=len-1;i++)
    {
            chomp=chomp+chom[i]+'k';
            }
    int sum=0;
    cout<<endl;
    for(int i=0;i<=strlen(chom)*2-1;i+=2)
    {
            mass[i]=atoi(&chomp[i]);
            cout<<mass[i]<<"  "; 
            sum+=mass[i]; 
            }
            cout<<endl;
            cout<<endl;
            cout<<"ÑóììГ* ГўГ±ГҐГµ Г·ГЁГ±ГҐГ« = "<<sum<<endl;
            cout<<endl;
            cout<<endl;
        system ("pause");
}
Thinker
Эксперт C++
4225 / 2199 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
17.11.2011, 18:17     Вывести сумму цифр числа #5
Цитата Сообщение от mc.Duck Посмотреть сообщение
C++
1
2
    char chom[]="";
    cin>>chom;
Ну вы и весельчак Сами хоть тестировали свою программу?
mc.Duck
Заблокирован
17.11.2011, 18:31     Вывести сумму цифр числа #6
Thinker, да..а что?)))
Thinker
Эксперт C++
4225 / 2199 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
17.11.2011, 18:36     Вывести сумму цифр числа #7
Цитата Сообщение от mc.Duck Посмотреть сообщение
Thinker, да..а что?)))
как вы умудряетесь вводить что-то в пустую строку, вернее, в одноэлементный массив?
im_Kudrik
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 20
17.11.2011, 18:40  [ТС]     Вывести сумму цифр числа #8
и в правду ,вывело не то что надо.но все равно спасибо за помощь =)
mc.Duck
Заблокирован
17.11.2011, 18:43     Вывести сумму цифр числа #9
Thinker, вообще-то chom[] тоже самое, что и *сhom .
Это абсолютно одинаковое объявление динамического массива.

Добавлено через 1 минуту
im_Kudrik, да, вохможно я намудрил. Попробуйте так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <string>
#include <clocale>
using namespace std;
 
int main(void)
{
    setlocale(LC_ALL,"Russian");
    char chom[99];
    string chomp="";
    cout<<"Ââåäèòå ÷èñëî: ";cin>>chom;
    int *mass=new int[strlen(chom)];
    int len=strlen(chom);
    for(int i=0;i<=len-1;i++)
    {
            chomp=chomp+chom[i]+'k';
            }
    int sum=0;
    cout<<endl;
    for(int i=0;i<=strlen(chom)*2-1;i+=2)
    {
            mass[i]=atoi(&chomp[i]);
            cout<<mass[i]<<"  "; 
            sum+=mass[i]; 
            }
            cout<<endl;
            cout<<endl;
            cout<<"ÑóììГ* ГўГ±ГҐГµ Г·ГЁГ±ГҐГ« = "<<sum<<endl;
            cout<<endl;
            cout<<endl;
        system ("pause");
}
Thinker
Эксперт C++
4225 / 2199 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
17.11.2011, 18:55     Вывести сумму цифр числа #10
Цитата Сообщение от mc.Duck Посмотреть сообщение
Thinker, вообще-то chom[] тоже самое, что и *сhom .
Это абсолютно одинаковое объявление динамического массива.
Что я могу сказать, ужас и только... Одно дело, когда вы функцию так описываете, а другое, когда определяете... Вы путаете массивы и указатели.
Кому то ОЧЕНЬ-ОЧЕНЬ-ОЧЕНЬ нужно книжки почитать.
neske
1479 / 846 / 75
Регистрация: 26.03.2010
Сообщений: 2,904
17.11.2011, 18:59     Вывести сумму цифр числа #11
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <string>
#include <sstream>
 
int main() {
    std::string str;
    std::cin >> str;
    std::stringstream ss;
    int cnt = 0;
    int temp;
 
    while (++cnt) {
        temp = (str[0] - '0') + (str[1] - '0');
        if (temp > 9) {
            ss << temp;
            ss >> str;
            ss.clear();
        }
        else
            break;
    }
 
    std::cout << temp << " " << cnt;
    std::cout << std::endl;
    return 0;
}
что-то лучше в голову не пришло)
im_Kudrik
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 20
17.11.2011, 19:23  [ТС]     Вывести сумму цифр числа #12
хм ,и сново не то!сумму цифр числа я могу вывести ,но задание другое...прочтите именно условие ,а не только заголовок
neske
1479 / 846 / 75
Регистрация: 26.03.2010
Сообщений: 2,904
17.11.2011, 19:29     Вывести сумму цифр числа #13
ок да?
Миниатюры
Вывести сумму цифр числа  
Thinker
Эксперт C++
4225 / 2199 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
17.11.2011, 19:32     Вывести сумму цифр числа #14
Вариант без string:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int SumDigits(int a)
{
   return a ? a%10 + Sum(a/10) : 0;
}
 
int Sum(int a)
{
    int s = a;
    while (abs(s = SumDigits(s)) >= 10)
       ;
    return s;
}
 
int main()
{
    int a;
    scanf("%d", &a);
    printf("%d\n", Sum(a));
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.11.2011, 19:34     Вывести сумму цифр числа
Еще ссылки по теме:

Функция вычисляющая количество цифр числа и сумму этих цифр - C++
Не могу найти ошибку. Помогите пожалуйста. Дана последовательность n натуральных чисел. Для каждого числа вычислить количество его цифр и...

Вывести текст на экран подсчитыать сумму цифр в тексте, записать сумму в файл - C++
. Создать с помощью текстового редактора файл file.txt, длина которого не превышает 150 символов. Написать программу, которая:  выводит...

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

Даны натуральные числа n, m. Получить сумму m средних цифр числа n - C++
Даны натуральные числа n, m. Получить сумму m средних цифр числа n Рассмотреть два варианта для четного и не четного количества цифр в...

Даны натуральные числа n, m. Получить сумму m последних цифр числа n - C++
Даны натуральные числа n, m. Получить сумму m последних цифр числа n. с пояснениями в 2010 версии заранее спс! Добавлено через 31...


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

Или воспользуйтесь поиском по форуму:
im_Kudrik
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 20
17.11.2011, 19:34  [ТС]     Вывести сумму цифр числа #15
neske ,спасибо большое ,но что если вводить трехзначное число ?или четырехзначное?и можно объяснить вот это
C++
1
2
3
4
5
6
7
while (++cnt) {
            temp = (str[0] - '0') + (str[1] - '0');
            if (temp > 9) {
            ss << temp;
            ss >> str;
            ss.clear();
        }
Yandex
Объявления
17.11.2011, 19:34     Вывести сумму цифр числа
Ответ Создать тему
Опции темы

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