Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
0 / 0 / 3
Регистрация: 09.10.2013
Сообщений: 189
1

Вывод на экран подсчета суммы элементов массива между первым и вторым отрицательными элементами

21.02.2014, 17:33. Показов 3496. Ответов 28
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
На С++ написана программа подсчета суммы элементов массива между первым и вторым отрицательными элементами . Но не получается сделать вывод сообщения о том, что нет положительных элементов между ними. Пробовал очень много, но не получается. Помогите пожалуйста
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
  #include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{    
    int i1,i2;
    int s;
int n;
cout<<"Enter the number of elements in the array:";/* Ввод  количества элементов массива*/
cin>>n;
int a [n];
 s=0;
for ( int i =0; i<n; i++) {  /*ввод массива*/
    cout<<"a["<<i<<"]=";
    cin>>a[i];
     for (int i=0; i<n; i++){ /*Нахождение первого отрицательного*/
        if (a[i] < 0)
        {
            i1 = i;
            break; /*если нашли, то сразу выход из цикла*/
        }
}
    for (int i=i1+1; n; i++) /*поиск второго отрицательного элемента*/
 {       if (a[i] < 0)
        {
            i2 = i;
            break;/* Выход из цикла */
  }   
    for (int i=i1+1; i<i2; i++) /*подсчет суммы и вывод на экран*/
    {    s=s+a[i];}
    cout << "s= " << s ;}
} 
    system("PAUSE");
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.02.2014, 17:33
Ответы с готовыми решениями:

Найти сумму элементов между первым и вторым отрицательными элементами массива
Прошу разъяснить как в массиве из 10 вещ. чисел найти сумму элементов между первым и вторым...

Сумму элементов массива, расположенных между первым и вторым отрицательными элементами
1)Сумму элементов массива, расположенных между первым и вторым отрицательными элементами 2) а так...

Найти произведение элементов массива расположенных между первым и вторым отрицательными элементами
Дан массив из N элементов (вещественные числа).Вычислить: 2.произвидение элементов...

Вычислить сумму элементов массива, расположенных между первым и вторым отрицательными элементами
Помогите решить найти ошибку, код вроде как правильный, но все равно выдает ошибку, помогите найти...

28
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
21.02.2014, 21:30 21
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от Тамика Посмотреть сообщение
Ну так у выражения i1 == i2 тип bool. И результат в итоге - false.
тип bool появился относительно недавно, лет так десять пятнадцать назад
и до сих пор встречаются компиляторы, которые его не знают
а эта конструкция будет в них работать, так что дело не в преобразовании
хотя формально все правильно
0
0 / 0 / 3
Регистрация: 09.10.2013
Сообщений: 189
21.02.2014, 21:33  [ТС] 22
Выскакивает что то типа https://www.cyberforum.ru/atta... 1392996639
0
Вежливость-главное оружие
233 / 234 / 86
Регистрация: 19.02.2013
Сообщений: 1,446
21.02.2014, 21:43 23
Вывод  на экран подсчета суммы элементов массива между первым и вторым отрицательными элементами


Код правильно скопировали? У меня все нормально работает.
0
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
21.02.2014, 21:49 24
mmeexx,
по моему ты не в ту сторону поехал
Цитата Сообщение от mmeexx Посмотреть сообщение
подсчета суммы элементов массива между первым и вторым отрицательными элементами . Но не получается сделать вывод сообщения о том, что нет положительных элементов между ними.
если нет положительных то сумма равна 0
0 не является положительным числом
тогда примерно так это решается
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
int neg=0;
int sum=0;
for(int i=0;i<n;i++)
 {
  if(a[i]<0)
  {
     if(neg==0)
      {
       neg=1;
       }
      else
      {
       neg=2;
       break; 
      }
   }
  else
   {
     if(neg==1)
       sum+a[i];     
   }
 }
if(neg==0)
  count<<"Error no negativ\n";
if(neg==1)
   count<<"Error one negativ\n";
 
if(neg==2)
 {
   if(sum!=0)
     count<<sum; 
  else
     count<<"Error no positiv; 
}
0
0 / 0 / 3
Регистрация: 09.10.2013
Сообщений: 189
21.02.2014, 22:34  [ТС] 25
У меня без сслки на массив. Может быть из-за этого?
0
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 37
21.02.2014, 23:34 26
Цитата Сообщение от ValeryS Посмотреть сообщение
тип bool появился относительно недавно, лет так десять пятнадцать назад
и до сих пор встречаются компиляторы, которые его не знают
а эта конструкция будет в них работать, так что дело не в преобразовании
хотя формально все правильно
Старые компиляторы, которые не знают bool - это относится к "достандартной эре". Потому какой смысл их упоминать? Я стараюсь придерживаться последних стандартов, иначе какой смысл что-то улучшать?
0
Вежливость-главное оружие
233 / 234 / 86
Регистрация: 19.02.2013
Сообщений: 1,446
22.02.2014, 00:33 27
"Не забываем сказать спасибо" народная мудрость

Добавлено через 35 секунд
mmeexx, опиши ошибку нормально. скрин выложи...
0
0 / 0 / 3
Регистрация: 09.10.2013
Сообщений: 189
17.06.2014, 17:56  [ТС] 28
Спасибо всем кто откликнулся
0
Заблокирован
17.06.2014, 18:23 29
Цитата Сообщение от mmeexx Посмотреть сообщение
программа подсчета суммы элементов массива между первым и вторым отрицательными элементами .
C++
1
2
3
4
5
6
7
8
9
10
   int size = (cout<<"Input count elements"<<endl,cin>>size, size), * array = new int[size];
    pair<bool, int> result(false, 0);
    for (int i = (cout<<"Input elements"<<endl,0); i < size; i++) {
        if ((cin >> array[i], array[i]) > 0 && result.first)result.second+=array[i];
        if (array[i] < 0 && result.first) {
            cout << result.second;
            delete[] array;
            break;
        } else if (array[i] < 0) result.first = true;
    };
0
17.06.2014, 18:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.06.2014, 18:23
Помогаю со студенческими работами здесь

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

Найти сумму элементов массива расположенных между первым и вторым отрицательными элементами
Условие задачи: Найти сумму элементов массива, расположенных между первым и вторым отрицательными...

Вычислить сумму элементов массива, расположенных между первым и вторым отрицательными элементами
В одномерном массиве Y, состоящий из N целых элементов, из промежутка , вычислить сумму элементов...

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

Вычислить сумму элементов массива, расположенных между первым и вторым отрицательными элементами
Вот условие задания: В одномерном целочисленном массиве (размер массива (не больше 20) и...

Найти сумму элементов массива, расположенных между первым и вторым отрицательными элементами
Здравствуйте, помогите пожалуйста закончить эту программу Код C++ #include &lt;iostream.h&gt;...


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

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru