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

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

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

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

17.06.2010, 21:53. Просмотров 910. Ответов 8
Метки нет (Все метки)

В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. Если можно с коментариями.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.06.2010, 21:53     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями.
Посмотрите здесь:

C++ Дана последовательность 100 целых чисел. Подсчитать сумму тех чисел, значения которых совпадают с их порядковым номером.
В одномерном массиве состоящий из Н чисел целых элементов найти сумму индексов отрицательное элементов C++
C++ В матрице целых чисел заменить все отрицательные элементы нулями.Подсчитать количество замен
C++ В массиве из 10 целых чисел подсчитать сумму элементов, стоящих левее максимального
C++ В одномерном массиве, состоящем из n целых элементов, вычислить сумму элементов массива, между первым и последним нулями
C++ Вычислить сумму всех целых чисел, лежащих между двумя целыми числами, выбранными пользователем
В одномерном массиве вещественных чисел вычислить сумму отрицательных элементов и произведение между max и min C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
17.06.2010, 22:10     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. #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>
#include <conio.h>
 
int main(){
int mas[10] = {1,2,4,0,4,5,7,8,0,1};
int i, sum; sum = 0;
//Просматриваем массив.
for( i = 0 ; i < 10 ; i++ )
           //если нашли 0
           if(mas[i]==0){
           //находим сумму до следующего нуля.
           for(i+=1; i<10 ; i++ ){
           if(mas[i]==0)break;
           sum+=mas[i];   
           }
           break;       //выходим из цикла просмотра.
           }
printf("sum: %d",sum);
printf("\n");
getch();
return 0;
}
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
18.06.2010, 03:50     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <algorithm>
#include <numeric>
#include <iterator>
#include <cassert>
 
int main(){
    const int SIZE = 10;
    int arr[SIZE] = { 1, 2, 0, 4, 5, 6, 1, 8, 0, 9 };
    std::cout << "Array: ";
    std::copy(arr, arr + SIZE, std::ostream_iterator<int>(std::cout, " "));
    int * start = (int*)std::find(arr, arr + SIZE, 0);
    int * end = (int*)std::find_end(arr, arr + SIZE, start, start + 1);
    assert ( end - start > 1 );
    std::cout << "\nSum of elements between left and right zero is "
        << std::accumulate(start, end, 0) << std::endl;
    return 0;
}
Sanu0074
58 / 58 / 2
Регистрация: 14.06.2010
Сообщений: 1,189
Записей в блоге: 5
18.06.2010, 17:41     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. #4
Цитата Сообщение от Genius Ignat Посмотреть сообщение
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>
#include <conio.h>
 
int main(){
int mas[10] = {1,2,4,0,4,5,7,8,0,1};
int i, sum; sum = 0;
//Просматриваем массив.
for( i = 0 ; i < 10 ; i++ )
           //если нашли 0
           if(mas[i]==0){
           //находим сумму до следующего нуля.
           for(i+=1; i<10 ; i++ ){
           if(mas[i]==0)break;
           sum+=mas[i];   
           }
           break;       //выходим из цикла просмотра.
           }
printf("sum: %d",sum);
printf("\n");
getch();
return 0;
}
можно немножечко проще:

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
using namespace std;
int main()
{   int mass[10]={1,2,3,0,5,6,4,2,0,1};
    int sum=0;
    for(int i=0; i<10; i++)
    {   if(mass[i]==0)
        {   for(i++;i<10;i++)
            {   sum+=mass[i];
                if(mass[i]==0)break;}}}
    cout<<endl<<"Summa = "<<sum<<endl;
}
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
18.06.2010, 17:51     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. #5
А в чем простота.
Sanu0074
58 / 58 / 2
Регистрация: 14.06.2010
Сообщений: 1,189
Записей в блоге: 5
18.06.2010, 22:54     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. #6
Цитата Сообщение от Genius Ignat Посмотреть сообщение
А в чем простота.
нк например ненужно stdio.h и conio, geth() и + писанины меньше
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
18.06.2010, 23:31     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. #7
Sanu0074:
А от куда тебе известно, на каком языке нужно сделать программу.
Sanu0074
58 / 58 / 2
Регистрация: 14.06.2010
Сообщений: 1,189
Записей в блоге: 5
19.06.2010, 00:48     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. #8
Цитата Сообщение от Genius Ignat Посмотреть сообщение
Sanu0074:
А от куда тебе известно, на каком языке нужно сделать программу.
оттуда что тема находится в разделе посвящонному С++
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.06.2010, 01:42     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями.
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
19.06.2010, 01:42     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями. #9
Цитата Сообщение от Sanu0074 Посмотреть сообщение
оттуда что тема находится в разделе посвящонному С++
Раздел называется С/С++ - это хоть и родственные, но всё-таки разные языки программирования. По сути, думаю, больше ничего не будет. Закрыто.
Yandex
Объявления
19.06.2010, 01:42     В одномерном массиве целых чисел содержится два нулевых значения. Подсчитать сумму чисел, заключённых между двумя нулями.
Закрытая тема Создать тему
Опции темы

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