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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Дана матрица размера M ... http://www.cyberforum.ru/cpp-beginners/thread385957.html
Дана матрица размера M<=N и дано целое число K(1<=K<=M). Вывести элементы K-ой строки данной матрицы. Помогите пожалуйста. Добавлено через 2 часа 17 минут Все решил, кому нужно вот код: #include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include <math.h>
C++ Написать программу которая выводит пример на вычитание(предел 100) Всем добрый вечер, немогу справиться с задачей. Условие: Написать программу которая выводит пример на вычитание(в пределах 100), запрашивает ответ пользователя, проверяет его и выводит сообщение "Правильно!" или "Вы ошиблись", и правильный результат. Ниже приведен рекомендуемый вид экрана во время выполнения программы.... http://www.cyberforum.ru/cpp-beginners/thread385953.html
Как удалить двойные пробелы? C++
Здравствуйте! Помогите! Написать программу, которая бы в произвольной строке (не более 80 символов) удаляла двойные пробелы и определяла длину новой строки. Спасибо большое!
функция в си++ для удаления элемента C++
Есть ли функция в си++ для удаления элемента,например из текста?) Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п.
C++ Известен рост трех человек http://www.cyberforum.ru/cpp-beginners/thread385944.html
Известен рост трех человек. Определить, одинаков ли их рост. #include <stdio.h> #include <conio.h> void main () { clrscr (); float p,v,t; printf("Izvesten rost treh chelovek. Opredelit, odinakov li ih rost\n"); printf("Vvedite rost treh chelovek\n");
C++ Печать текстового файла Всем привет! Нужно написать программу, которая выводит на печать файл file.txt Каким образом в С++ можно это сделать? Добавлено через 23 минуты Может быть, можно как-то напечатать через system()? подробнее

Показать сообщение отдельно
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
17.11.2011, 19:38     Вывести сумму цифр числа
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
#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 = 0;
        for (int i = 0; i < (int) str.size(); ++i)
            temp += (str[i] - '0');
        if (temp > 9) {
            ss << temp;
            ss >> str;
            ss.clear();
        }
        else
            break;
    }
 
    std::cout << temp << " " << cnt;
    std::cout << std::endl;
    return 0;
}
ss в данном случае это универсальный поток ввода - вывода, мы сначала загружаем в него число temp, а выгружаем уже в строку, тем самым мы конвертировали int в string. А далее, мы его отчищаем, ибо вышеописанная операция может происходить не раз. Ну и собственно пока мы не добрались до брейка, то есть temp > 9, счетчик будет инкрементироваться.
 
Текущее время: 04:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru