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

в чем ошибка,как довести до ума - C++

Восстановить пароль Регистрация
 
xonty
0 / 0 / 0
Регистрация: 31.05.2013
Сообщений: 27
12.12.2013, 15:39     в чем ошибка,как довести до ума #1
Дан массив чисел В[0:N]. Найти сумму положительных и отрицательных чисел массива с нечетными индексами и количество элементов массива равных нулю








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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
#include<iostream.h>
#define n 8
int main(int argc, char* argv[])
{ int i, a[30], b[20], kol, sumA, sumB, x, g, k, t, d, l, m;
sumA=0;
sumB=0;
kol=0;
for (i=0; i<n; i++) {cout<<"Vvedite element massiva"; cin>>a[i];}
for (i=0; i<n; i++) cout<<a[i]<<" ";
for (i=0; i<n; i++)
 
{if(a[i]==0) kol++;
 if(i % 2 <0 && a[i] < 0) sumA+=a[i];
 if(i % 2 >0 && a[i] > 0) sumB+=a[i];}
  cout <<"\n kol_nulei="<<kol;
  cout <<"\n sum_otrizatelnih"<<sumA;
  cout <<"\n sum_pologitelnih="<<sumB<<endl;
  cin>>a[i];
        return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Black_Thorn
17 / 17 / 1
Регистрация: 06.12.2012
Сообщений: 46
12.12.2013, 15:53     в чем ошибка,как довести до ума #2
if(i % 2 <0 && a[i] < 0) sumA+=a[i]; - знак больше поставить нужно i%2 > 0
xonty
0 / 0 / 0
Регистрация: 31.05.2013
Сообщений: 27
12.12.2013, 16:30  [ТС]     в чем ошибка,как довести до ума #3
он не правильно считает
Black_Thorn
17 / 17 / 1
Регистрация: 06.12.2012
Сообщений: 46
12.12.2013, 18:07     в чем ошибка,как довести до ума #4
#include <iostream>

using namespace std;
#define n (8)

int main(int argc, char* argv[])
{ int i, a[30], b[20], kol, sumA, sumB;
sumA=0;
sumB=0;
kol=0;

for (i=0; i<n; i++)
{
cout<<"Vvedite element massiva - ";
cin>>a[i];
}

for (i=0; i<n; i++)
cout<<a[i]<<" ";

for (i=0; i<n; i++)
{
if(a[i]==0)
kol++;
if((i+1)%2 != 0 && a[i] < 0)
sumA += a[i];
if((i+1)%2 != 0 && a[i] > 0)
sumB += a[i];
}

cout <<"\n kol_nulei="<<kol;
cout <<"\n sum_otrizatelnih = "<<sumA;
cout <<"\n sum_pologitelnih = "<<sumB<<endl;

return 0;
}
так вроде работает
Yandex
Объявления
12.12.2013, 18:07     в чем ошибка,как довести до ума
Ответ Создать тему
Опции темы

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