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

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

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

Сумма элементов массива находящих первым и последным положительным и элементами - C++

20.07.2012, 10:26. Просмотров 627. Ответов 12
Метки нет (Все метки)

Сумма элементов массива находящих первым и последным положительным и элементами
например: -6 -4 3 -4 8 9 7 -7 4 -1 здесь найти сумма -4 8 9 7 -7
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.07.2012, 10:26     Сумма элементов массива находящих первым и последным положительным и элементами
Посмотрите здесь:

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

Сумма элементов массива, расположенных между первым и последним положительным элементом - C++
Вычислить сумму элементов массива, расположенных между первым и последним положительными элементами. Вот что получилось... ...

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

Сумма элементов массива через один между первым отрицательным и последним положительным - C++
помогите написать программу расчета сумму элементов массива через один между первым отрицательным и последним положительным. одномерный...

Сумма элементов массива, расположенных между первым и последним нулевыми элементами - C++
В одномерном массиве, состоящем из n целых элементов, вычислить: сумму элементов массива, расположенных между первым и последним нулевыми...

Сумма элементов между первым и последним нулевыми элементами одномерного массива - C++
Пожалуйста помогите. В одномерном массиве определить к-во элементов между первым и последним нулевыми элементами.

Сумма элементов массива, расположенных между первым и последним отрицательными элементами - C++
Помогите найти ошибку #include <iostream> #include <ctime> using namespace std; int main() { ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Catstail
Модератор
22449 / 10854 / 1768
Регистрация: 12.02.2012
Сообщений: 17,971
20.07.2012, 10:51     Сумма элементов массива находящих первым и последным положительным и элементами #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
#include <iostream.h>
 
int main(int argc, char* argv[])
{
 
    int Arr[]={-6, -4, 3, -4, 8, 9, 7, -7, 4, -1};
    int n=sizeof(Arr)/sizeof(int);
    int i,ib,ie,s=0;
 
    // Èùåì Г*îìåð 1-ГЈГ® ïîëîæèòåëüГ*îãî
 
    for (i=0; i<n; i++)
        if (Arr[i] > 0) 
        {
            ib=i;
            break;
        }
 
    // Èùåì Г*îìåð ïîñëåäГ*ГҐГЈГ® ïîëîæèòåëüГ*îãî
 
    for (i=n-1; i>=0; i--)
        if (Arr[i] > 0) 
        {
            ie=i;
            break;
        }
 
    // Ñóììèðóåì
 
    for (i=ib+1; i<ie; i++)
    { 
        cout << Arr[i] << " ";
        s+=Arr[i];
    }
 
    cout << endl;
    cout << "S=" << s << endl;
 
    return 0;
}
Миниатюры
Сумма элементов массива находящих первым и последным положительным и элементами  
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
20.07.2012, 11:14     Сумма элементов массива находящих первым и последным положительным и элементами #3
Catstail, для корректной работы осталось рассмотреть два случая:
1. В массиве не более одного положительного элемента;
2. В массиве только два положительных элемента, которые стоят рядом.
В этих случаях сумма неопределена.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<stdio.h>
#define N 10
int main()
{
   int s = 0, i, i1, i2, a[N] = {-6, -4, 3, -4, 8, 9, 7, -7, 4, -1};
   for(i1 = 0; i1 < N && a[i1] <= 0; i1++)
      ;
   for(i2 = N - 1; i2 >= 0 && a[i2] <= 0; i2--)
      ;
   if (i2 - i1 > 1)
   {
       for (i = i1 + 1; i < i2; i++)
          s += a[i];
       printf("s = %d\n", s);
   }
   else puts("no sum");
   return 0;
}
Catstail
Модератор
22449 / 10854 / 1768
Регистрация: 12.02.2012
Сообщений: 17,971
20.07.2012, 11:15     Сумма элементов массива находящих первым и последным положительным и элементами #4
В обоих этих случаях моя программы выдаст нуль. Что, как я понимаю, правильно... Ибо в условиях это не оговаривалось.
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
20.07.2012, 11:17     Сумма элементов массива находящих первым и последным положительным и элементами #5
Цитата Сообщение от Catstail Посмотреть сообщение
В обоих этих случаях моя программы выдаст нуль. Что, как я понимаю, правильно...
Чему равна сумма элементов пустого множества?
Catstail
Модератор
22449 / 10854 / 1768
Регистрация: 12.02.2012
Сообщений: 17,971
20.07.2012, 11:20     Сумма элементов массива находящих первым и последным положительным и элементами #6
В рекурсивных программах сумма элементов пустого множества полагается равной нулю
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
20.07.2012, 11:21     Сумма элементов массива находящих первым и последным положительным и элементами #7
Но у Вас же итаративный алгоритм Да и это неправильно, рекурсия, итерация, ответ правильный должен быть.
Catstail
Модератор
22449 / 10854 / 1768
Регистрация: 12.02.2012
Сообщений: 17,971
20.07.2012, 11:26     Сумма элементов массива находящих первым и последным положительным и элементами #8
Не принципиально. Сумму элементов пустого множества удобно считать равной нулю. При этом не возникает никаких противоречий ни с основами математики, ни с алгоритмами... А условия задачи нужно формулировать четко (например, так: ... при отсутствии положительных элементов выдать... ; если два единственных положительных элемента стоят рядом - выдать...).

Добавлено через 59 секунд
Цитата Сообщение от Thinker Посмотреть сообщение
ответ правильный должен
- с чьей точки зрения?
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
20.07.2012, 11:27     Сумма элементов массива находящих первым и последным положительным и элементами #9
Согласен, не принципиально. Только по ответу не понятно будет, пустое множество или нет.
Mиxaил
532 / 437 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
20.07.2012, 11:27     Сумма элементов массива находящих первым и последным положительным и элементами #10
STL
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
#include <functional>
#include <numeric>
 
int main( int argc, char *argv[] )
{
    int arr[] = { -1, 2, 3, 4, 5, -6, 7, -8, 9 };
    std::vector < int > vec( arr, arr + sizeof( arr ) / sizeof( *arr ) );
    std::copy( std::begin( vec ), std::end( vec ), std::ostream_iterator < int >( std::cout, " " ) );
    std::cout << std::endl;
    
    int total = 0, result;
 
    result = std::accumulate( std::find_if( vec.begin(), vec.end(), std::bind2nd( std::greater < int >(), 0 ) ),
                              std::find_if( vec.rbegin(), vec.rend(), std::bind2nd( std::greater < int >(), 0 ) ).base(),
                              total );  
    
    std::cout << "Result: " << result << std::endl;
    return 0;
}
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
20.07.2012, 11:28     Сумма элементов массива находящих первым и последным положительным и элементами #11
Цитата Сообщение от Catstail Посмотреть сообщение
- с чьей точки зрения?
С философской
Catstail
Модератор
22449 / 10854 / 1768
Регистрация: 12.02.2012
Сообщений: 17,971
20.07.2012, 11:28     Сумма элементов массива находящих первым и последным положительным и элементами #12
Цитата Сообщение от Thinker Посмотреть сообщение
Согласен, не принципиально. Только по ответу не понятно будет, пустое множество или нет.
- вот здесь я согласен с Вами... Но это проблема не моя, а постановщика...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2012, 11:29     Сумма элементов массива находящих первым и последным положительным и элементами
Еще ссылки по теме:

Сумма элементов массива, расположенных между первым и последним отрицательными элементами - C++
12.В одномерном массиве, состоящем из n вещественных элементов, вычислить: а) сумму элементов массива с нечетными номерами; б) сумму...

Сумма элементов массива, расположенных между первым и последним положительными элементами - C++
14.В одномерном массиве, состоящем из n вещественных элементов, вычислить: а) минимальный элемент массива; б) сумму элементов...

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

Разница элементов массива между первым отлрицательным и вторым положительным элементам - C++
Старался сам написать, но что-то не получается, всегда нуль. #include &lt;ctime&gt; #include &lt;iostream&gt; using namespace std; ...

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


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

Или воспользуйтесь поиском по форуму:
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
20.07.2012, 11:29     Сумма элементов массива находящих первым и последным положительным и элементами #13
Цитата Сообщение от Catstail Посмотреть сообщение
- вот здесь я согласен с Вами... Но это проблема не моя, а постановщика...
Замечательно, мы с Вами это понимаем, автор темы пусть сам теперь разбирается.
Yandex
Объявления
20.07.2012, 11:29     Сумма элементов массива находящих первым и последным положительным и элементами
Ответ Создать тему
Опции темы

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