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

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

Восстановить пароль Регистрация
 
agent008
1 / 1 / 0
Регистрация: 15.03.2014
Сообщений: 118
18.03.2014, 15:34     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #1
В маcсиве A(n) (n<=7) хотя бы один элемент ноль. Определить количество положительных и количество отрицательных элементов до первого нуля!

Вот код, только неправильно что-то:
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
#include <iostream>
#include <string>
#include <math.h>
 
using std::cout;
using std::cin;
using std::endl;
 
int main()
{
        int a[7], kp, km, n, m, p;
        m=0,
        p=0;
        for (int i = 0; i < 7; i++)
    {
            cout << "[" << i + 1 << "]" << ": ";
 
 
for(i=0;i<n;i++)
{
 
  if(a[i]=0)
  break;
      if(a[i]<0)
      km = m+1;
         if(a[i]>0)
         kp = p+1;
 
 
}
            cin >> a[i];
    }
 
            cout   << "\n masiv: " <<'\t'
                   << "\n km: " <<'\t'
                   << "\n kp: " <<'\t'
 
            for (int i = 0; i < 7; ++i);
    {
            cout << a[i] << " ";
    }
 
        cout << endl;
 
        return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.03.2014, 15:34     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде
Посмотрите здесь:

В массиве А(n) (n<=7) хотя бы один нуль. Определить количество положительных и количество отрицательных элементов к первому нулю. C++
Определить количество положительных, отрицательных и нулевых элементов массива. C++
C++ Определить количество положительных, отрицательных и нулевых элементов массива.
Определить количество положительных и количество отрицательных элементов массива C++
C++ Найти через индекс количество отрицательных и количество положительных элементов массива
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Lers
12 / 12 / 3
Регистрация: 27.05.2012
Сообщений: 202
18.03.2014, 15:37     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #2
а что неправильно? можно ошибки увидеть?
agent008
1 / 1 / 0
Регистрация: 15.03.2014
Сообщений: 118
18.03.2014, 15:40  [ТС]     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #3
Цитата Сообщение от Lers Посмотреть сообщение
а что неправильно? можно ошибки увидеть?
Не выводит количество положительных и количество отрицательных элементов до первого нуля, а просто масив который был задан.

Смотрите 22-27 строчки.
Lers
12 / 12 / 3
Регистрация: 27.05.2012
Сообщений: 202
18.03.2014, 15:43     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #4
C++
1
km = m+1;
C++
1
kp = p+1;
наверно нужно
C++
1
km=km+1;
C++
1
kp=kp+1;
agent008
1 / 1 / 0
Регистрация: 15.03.2014
Сообщений: 118
18.03.2014, 15:45  [ТС]     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #5
Lers, нет, уже пробовал, выводит то же самое!
Lers
12 / 12 / 3
Регистрация: 27.05.2012
Сообщений: 202
18.03.2014, 15:47     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #6
вы ничего и не выводите
C++
1
2
3
cout   << "\n masiv: " <<'\t'
                   << "\n km: " <<'\t'
                   << "\n kp: " <<'\t
Добавлено через 49 секунд
вы просто выводите текст "km: "
" kp: "
aex
88 / 77 / 29
Регистрация: 06.03.2014
Сообщений: 223
18.03.2014, 15:49     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #7
Цитата Сообщение от agent008 Посмотреть сообщение
C++
1
2
3
km = m+1;
   if(a[i]>0)
   kp = p+1;
попробуй тут вот так
C++
1
2
3
4
if(a[i]<0)
      m = m+1;
         if(a[i]>0)
         p = p+1;
ну и выводить соответственно не km и kp, a m и p
agent008
1 / 1 / 0
Регистрация: 15.03.2014
Сообщений: 118
18.03.2014, 15:51  [ТС]     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #8
aex, не работает.
Lers
12 / 12 / 3
Регистрация: 27.05.2012
Сообщений: 202
18.03.2014, 15:55     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #9
все работает, просто вы этого не видите, т.к. не выводите ничего, кроме своего массива. Проверьте 34-36 строчки.
agent008
1 / 1 / 0
Регистрация: 15.03.2014
Сообщений: 118
18.03.2014, 15:58  [ТС]     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #10
Скиньте пожалуйста исправленный код, а то я что-то совсем запутался!
Krevedkoff
10 / 10 / 2
Регистрация: 06.01.2011
Сообщений: 49
18.03.2014, 16:04     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #11
C++
1
cout<<kp<<" "<<km;
Вы же зачем то эти переменные объявляли и изменяли, я полагаю чтобы хранить там ответ? Так их и надо выводить.
Ilot
Модератор
Эксперт С++
1767 / 1142 / 223
Регистрация: 16.05.2013
Сообщений: 3,020
Записей в блоге: 5
Завершенные тесты: 1
18.03.2014, 16:07     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #12
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Вот вам корректное решение и не бейте голову:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
int main() {
    const int N = 7;
    int a[N], index = 0, i;
    for (i = 0; i < N; ++i) {
        cout << "a[" << i + 1 << "]" << ": ";
        cin >> a[i];
        if(!a[i]) break;
        a[i]>0? ++index: --index;
    }
    cout   << "\nmasiv: " << endl;
    for (int k = 0; k < i; ++k) {
        cout << a[k] << " ";
    }
    cout << endl;
    cout << "Positive numbers: " << (i + index)/2 << endl;
    cout << "Negative numbers: " << (i - index)/2 << endl;
    return 0;
}
agent008
1 / 1 / 0
Регистрация: 15.03.2014
Сообщений: 118
18.03.2014, 16:13  [ТС]     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #13
Ilot, Спасибо большое!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.03.2014, 16:22     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
aex
88 / 77 / 29
Регистрация: 06.03.2014
Сообщений: 223
18.03.2014, 16:22     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде #14
C++
1
2
3
cout   << "\n masiv: " <<'\t'
                   << "\n km: " <<km<<'\t'
                   << "\n kp: " <<kp<<'\t
Yandex
Объявления
18.03.2014, 16:22     Определить количество положительных и количество отрицательных элементов до первого нуля. Найти ошибку в коде
Ответ Создать тему
Опции темы

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