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

строки - C++

Восстановить пароль Регистрация
 
Hammer
1 / 1 / 0
Регистрация: 09.01.2012
Сообщений: 9
09.01.2012, 22:34     строки #1
как написать программу "Дана строка S, изображающая целое число. Вывести сумму цифр этого числа."
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.01.2012, 22:34     строки
Посмотрите здесь:

C++ Как считать строки из файла, если там больше одной строки?
C++ Как первые два символа строки переставить в конец этой строки?
c++ Даны две строки: S1 и S2. Определить количество вхождений строки S2 в строку S1. C++
C++ Указать номер строки, максимально удаленной от первой строки заданной матрицы
C++ Функция перезаписывает символы строки заданным количеством символов другой строки
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
romedal
 Аватар для romedal
53 / 53 / 1
Регистрация: 18.03.2010
Сообщений: 345
Записей в блоге: 1
09.01.2012, 22:37     строки #2
Цитата Сообщение от Hammer Посмотреть сообщение
как написать программу "Дана строка S, изображающая целое число. Вывести сумму цифр этого числа."
Есть спец. функции, переводящие строки в число, а можно самому вручную распарсить... Начало есть ?
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
09.01.2012, 22:39     строки #3
C
1
2
3
4
5
6
7
int sum_dig ( char *s ) {
    int sum = 0;
    for ( ; *s ; ++s )
        if ( isdigit ( *s) ) 
            sum += *s - '0' ;
    return sum;
}
Hammer
1 / 1 / 0
Регистрация: 09.01.2012
Сообщений: 9
09.01.2012, 22:51  [ТС]     строки #4
Цитата Сообщение от romedal Посмотреть сообщение
Есть спец. функции, переводящие строки в число, а можно самому вручную распарсить... Начало есть ?
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
33
34
35
36
37
#include <iostream>
 
using namespace std;
 
int main()
{
    string Num;
    int Sum = 0, n;
 
    cin>>Num;
 
    n = sizeof(Num);
 
    for (int i=0; i<n; i++){
 
        switch(Num[i]){
 
            case '0' : {Sum+=0; break;}
            case '1' : {Sum+=1; break;}
            case '2' : {Sum+=2; break;}
            case '3' : {Sum+=3; break;}
            case '4' : {Sum+=4; break;}
            case '5' : {Sum+=5; break;}
            case '6' : {Sum+=6; break;}
            case '7' : {Sum+=7; break;}
            case '8' : {Sum+=8; break;}
            case '9' : {Sum+=9; break;}
 
            default : {cout<<"Error!!! "<<Num[i]<<" - ne cifra\n";
                       return 0;
            }
        }
    }
    cout<<Sum;
 
    return 0;
}
 Комментарий модератора 
Используйте теги форматирования кода!


Есть другой способ для code blocks?
Yandex
Объявления
09.01.2012, 22:51     строки
Ответ Создать тему
Опции темы

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