Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/34: Рейтинг темы: голосов - 34, средняя оценка - 4.71
1 / 5 / 0
Регистрация: 16.10.2017
Сообщений: 170

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

31.10.2017, 16:53. Показов 6793. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
задача:найти среднее арифметическое положительных элементов массива и отрицательных элементов массива.
реализовать с помощью функции.
вот мой код:
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
#include <iostream>
using namespace std;
int sr(int*a, int avgneg, int avgpos) {
    int n, j=0, k=0;
    for (int i = 0; i < n; i++) {
        if (a[i] > 0 && a[i] != 0) {
            avgpos = avgpos + a[i];
            k = k + 1;
}
        if (a[i] < 0 && a[i] != 0) {
        
            avgneg = avgneg + a[i];
            j = j + 1;
        }
    }
    return *a;
}
int main()
{
        int a[20];
    int n, avgneg=0, avgpos=0;
    pt >> n;
    for (int i = 0; i < n; i++)
        pt >> a[i];
    pt << sr(a, avgpos, avgneg);
        
}
p.s. что не так? циклится.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.10.2017, 16:53
Ответы с готовыми решениями:

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

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

Найти среднее арифметическое значение положительных и отрицательных элементов массива
Задание 2 (его или третье) Дан Массив Xi, i = 1, ..., 15. Найти среднее арифметическое значение положительных и отрицательных элементов...

6
 Аватар для QuakerRUS
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
31.10.2017, 16:58
C++
1
int n, j=0, k=0;
n не инициализирована. Полагаю надо добавить ее в аргументы функции sr
0
39 / 26 / 18
Регистрация: 30.09.2014
Сообщений: 142
31.10.2017, 17:01
Цитата Сообщение от lukinyx99 Посмотреть сообщение
&& a[i] != 0
Зачем эти дополнительные условия при строгом знаке?
Цитата Сообщение от lukinyx99 Посмотреть сообщение
return *a;
Что Вы пытаетесь вернуть из функции? Разыменованный массив? Первый его элемент?
Цитата Сообщение от lukinyx99 Посмотреть сообщение
pt
Что такое pt? Поток? Где он объявлен?
Цитата Сообщение от lukinyx99 Посмотреть сообщение
(int*a, int avgneg, int avgpos)
Для того, чтобы параметры можно было изменять внутри функции, их нужно передавать по ссылке
Кроме того, для кода пользуйтесь специальными тегами форума
0
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,913
31.10.2017, 17:29
Цитата Сообщение от lukinyx99 Посмотреть сообщение
p.s. что не так? циклится.
Хотите сказать что компилируется? Это не так:
$ g++ main.cpp
main.cpp: In function ‘int main()’:
main.cpp:22:3: error: ‘pt’ was not declared in this scope
0
1 / 5 / 0
Регистрация: 16.10.2017
Сообщений: 170
31.10.2017, 17:35  [ТС]
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
g++ main.cpp
main.cpp: In function ‘int main()’:
main.cpp:22:3: error
замените pt на cin и cout соответственно. я решаю в электронном задачнике, там нужно вводить и выводить через pt, cin и cout там не работают.
0
 Аватар для QuakerRUS
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
31.10.2017, 17:57
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
#include <iostream>
#include <stdlib.h>
 
using namespace std;
 
void sr(const int ar[], int n, int &pos, int &neg)
{
    pos = 0;
    neg = 0;
 
    for (int i = 0; i < n; i++)
    {
        if (ar[i] > 0)
            pos += ar[i];
        else
            neg += ar[i];
    }
}
 
int main()
{
    const int N = 10;
    int a[N], smax, smin, avgpos, avgneg;
 
    for (int i = 0; i < N; i++)
    {
        a[i] = rand() % 201 - 100;
        cout << a[i] << ' ';
    }
 
    sr(a, N, avgpos, avgneg);
    cout << endl << "avgpos = " << avgpos << "; avgneg = " << avgneg << endl;
 
    system("pause");
    return 0;
}
2
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,913
31.10.2017, 18:30
Еще стоит учесть замечания artem2302
Плюс к тому, вы не передаете в функцию размер массива и не вычисляете среднее арифметическое. Если это сделать все заработает (у себя проверил).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.10.2017, 18:30
Помогаю со студенческими работами здесь

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

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

Найти среднее арифметическое положительных элементов массива и сред.арифм. элементов больших единицы второго массива
Для каждой строки матрицы A (6×5) найти среднее арифметическое положительных элементов, а для каждой строки матрицы B (4×7) — среднее...

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

Функция: подсчет числа отрицательных элементов массива, и суммы положительных элементов матрицы
написать функцию подсчета отрицательных элементов одномерного массива А(6) и сумму положит-х эл-ов матрицы В(6x6)


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru