Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Mishan9_Skom
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 11
#1

Найти среднее арифметическое значение положительных и отрицательных элементов массива - C++

19.12.2015, 14:32. Просмотров 856. Ответов 5
Метки нет (Все метки)

Задание 2 (его или третье)
Дан Массив Xi, i = 1, ..., 15. Найти среднее арифметическое значение положительных и отрицательных элементов массива R1 и R2. Определить, какое из найденных значений больше по абсолютной величине
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2015, 14:32
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти среднее арифметическое значение положительных и отрицательных элементов массива (C++):

Найти среднее арифметическое значение положительных элементов массива
Задан массив A(n),найти среднее арифметическое значение положительных элементов...

Подсчитать сумму положительных и среднее арифметическое отрицательных элементов массива
Здравствуйте , помогите решить задачу: Дан одномерный массив размером М....

Подсчитать сумму положительных и среднее арифметическое отрицательных элементов массива
Разработать программы по формированию и обработке одномерного и двумерного...

Среднее арифметическое положительных элементов массива, произведение и количество отрицательных элементов
в массиве X найти среднее арифметическое положительных элементов массива,...

Функция: среднее арифметическое положительных элементов массива и отрицательных элементов массива
задача:найти среднее арифметическое положительных элементов массива и...

Найти столбик, в котором среднее арифметическое значение из положительных элементов имеет минимальное значение
Никак не могу понять задачу, помогите написать программу, очень нужно ! В...

5
Apostol584
242 / 148 / 118
Регистрация: 26.11.2012
Сообщений: 375
Завершенные тесты: 2
19.12.2015, 15:18 #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
#include <iostream> 
#include <time.h>
const int N = 15;
void main()
{
    setlocale(LC_ALL, "rus");
    srand(time(NULL));
    int X[N];
    int r1 = 0, r2 = 0;
    int r1_i = 0, r2_i = 0;
    for (int i = 0; i < N; i++){
        X[i] = rand() % 200 - 100;
        if (X[i] > 0){
            r1 += X[i];
            r1_i++;
        }
        else{
            r2 += X[i];
            r2_i++;
        }
 
    }
    std::cout << "Сумма " << ((abs(r1/r1_i) > abs(r2/r2_i)) ? "положительных" : "отрицательных") << " чисел больше\n";
    system("pause");
}
0
Mishan9_Skom
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 11
20.12.2015, 15:08  [ТС] #3
не работает программа или я чего то не понимаю. открывается консоль с надписью "сумма отрицательных чисел больше" и на этом все. разве туда писать ничего не нужно? переменные там или еще чего?
0
Apostol584
242 / 148 / 118
Регистрация: 26.11.2012
Сообщений: 375
Завершенные тесты: 2
20.12.2015, 15:21 #4
она работает, значения вводились рандомом. Добавил ввод
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
#include <iostream> 
 
const int N = 15;
void main()
{
    setlocale(LC_ALL, "rus");
    int X[N];
    int r1 = 0, r2 = 0;
    int r1_i = 0, r2_i = 0;
    for (int i = 0; i < N; i++){
        std::cout << " X[" << i + 1 << "] = ";
        std::cin >> X[i];
        if (X[i] != 0){
            if (X[i] > 0){
                r1 += X[i];
                r1_i++;
            }
            else{
                r2 += X[i];
                r2_i++;
            }
        }
    }
    std::cout << "\nСумма " << ((abs(r1 / r1_i) > abs(r2 / r2_i)) ? "положительных" : "отрицательных") << " чисел больше\n";
    system("pause");
}
0
Mishan9_Skom
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 11
21.12.2015, 15:52  [ТС] #5
теперь при заполнении переменных вообще отказывается работать.Необратимое исключение говорит...
0
Apostol584
242 / 148 / 118
Регистрация: 26.11.2012
Сообщений: 375
Завершенные тесты: 2
22.12.2015, 11:26 #6
Mishan9_Skom, скорее всего деление на 0, но без ошибки ни чего сказать не могу
C++
1
2
3
4
5
6
7
8
9
10
11
12
int r1_i = 0, r2_i = 0;
//меняем на
double r1_i = 0, r2_i = 0;
 
 
//------
std::cout << "\nСумма " << ((abs(r1 / r1_i) > abs(r2 / r2_i)) ? "положительных" : "отрицательных") << " чисел больше\n";
//меняем на 
    r1 = (r1_i > 0) ? abs(r1 / r1_i) : 0;
    r2 = (r2_i > 0) ? abs(r2 / r2_i) : 0;
    std::cout << "\nСумма " << ((r1>r2) ? "положительных" : "отрицательных") << " чисел больше\n";
}
0
22.12.2015, 11:26
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2015, 11:26
Привет! Вот еще темы с решениями:

Найти среднее арифметическое положительных элементов массива (a1,a2,…,aN)
Найти среднее арифметическое положительных элементов массива (a1,a2,…,aN)....

Найти среднее арифметическое положительных элементов массива
1) Найти среднее арифметическое положительных элементов массива. Массив...

Найти среднее арифметическое положительных элементов массива
Найти среднее арифметическое положительных элементов массива С(25); Знайти...

Найти количество отрицательных элементов и среднее арифметическое массива А
Не могу понять, как исправить. Выбивает ошибки: prog.cpp: In function 'int...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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