Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
atu
0 / 0 / 0
Регистрация: 08.10.2014
Сообщений: 15
#1

Найти суммы чисел, записанных в строке, между нулями - C++

30.06.2015, 17:59. Просмотров 318. Ответов 2
Метки нет (Все метки)

Дана строка чисел например: 1 2 4 0 4 4 5 0 32 21 35 0 3 0. Нужно найти суммы чисел между нулями. Но в С++ я новичек и не знаю как сие реализовать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2015, 17:59
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти суммы чисел, записанных в строке, между нулями (C++):

Напечатать суммы и количество чисел расположенных между соседними нулями - C++
В массиве все элементы – положительные целые числа и нули. Напечатать суммы и количество чисел расположенных между соседними нулями. Только...

Матрица.В матрице A(6; 6) найти произведение суммы четных чисел в 3-ей строке и суммы отрицательных чисел 1-го столбца - C++
В матрице A(6; 6) найти произведение суммы четных чисел в 3-ей строке и суммы отрицательных чисел 1-го столбца:cry:

Найти суммы элементов, записанных по диагоналям. - C++
Дана целочисленная квадратная матрица. Найти суммы элементов, записанных по диагоналям. как я понял сумм будет 2. Не могу понять...

Описать функцию Sum(t) для нахождения суммы наибольшего и наименьшего из чисел, записанных в текстовом файле - C++
Прошу помочь решить задачки!:(очень нужно (Билет №16) В текстовом файле t(t-файловая переменная)записана непустая последственность...

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

В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. - C++
В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. Если можно с...

2
Геомеханик
759 / 565 / 387
Регистрация: 26.06.2015
Сообщений: 1,325
30.06.2015, 19:44 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <cctype>
 
enum state {
    s_zero, s_number, s_end
};
 
state m_next(const char*& s, size_t& n){
    state st;
 
    if(! *s)
        st = s_end;
    else {
        while(*s && ! std::isdigit(*s))
            ++s;
 
        if(*s == '0'){
            ++s;
            st = s_zero;
        } else {
            for(n = 0; std::isdigit(*s); ++s)
                n = n*10 + (size_t)(*s - '0');
            st = s_number;
        }
    }
    return st;
}
 
 
int main(void){
    char  s[] = "1 2 4 0 4 4 5 0 32 21 35 0 3 0";
 
    state  st;
    size_t n;
 
    size_t sum = 0;
    const char* ptr = &s[0];
    do {
 
        switch((st = m_next(ptr, n))){
        case s_number:
            sum += n;
            break;
        case s_zero:
            std::cout << "sum: " << sum << std::endl;
            sum = 0;
            break;
        }
 
    } while(st != s_end);
    return 0;
}
Результат работы кода
1
rjxk
7 / 7 / 6
Регистрация: 18.06.2015
Сообщений: 30
30.06.2015, 20:40 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
#include <numeric>
using namespace std;
 
bool comp(int val) { return val==0; }
 
int main()
{
    vector<int> v{1, 2, 4, 0, 4, 4, 5, 0, 32, 21, 35, 0, 3, 0};
    auto i1 = v.begin();
    auto i2 = v.begin();
 
    while (i2!=v.end())
    {
        i2 = find_if(i1, v.end(), comp);
        cout << accumulate(i1, i2, 0) << " ";
        i1 = ++i2;
    }
 
    return 0;
}
Результат работы кода
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.06.2015, 20:40
Привет! Вот еще темы с ответами:

Найти сумму чисел записанных в файл - C++
В файле test.in записано целые числа. Найти их сумму. Результат запишите в test.out . Для работы с файлами используйте функции fstream

Найти наибольшее значение из чисел записанных в файл - C++
В текстовом файле записана непустая последовательность вещественных чисел, разделенных пробелами. Найти наибольшее из этих чисел. Помогите,...

Найти среднее арифметическое всех чисел записанных в файл - C++
Помогите пожалуйста сделать данную программу в С++ Заданный файл , компоненты которого действительные числа . Найти среднее...

Найти k-ю цифру последовательности, сформированной из записанных . подряд натуральных чисел: 123456789101112 - C++
Найти k-ю цифру последовательности, сформированной из записанных ... подряд натуральных чисел: 123456789101112131415


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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