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

Определить среднее арифметическое всех отрицательных элементов матрицы

07.04.2011, 22:36. Показов 4342. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Для заданной матрицы A(n, m) определить среднее арифметическое всех отрицательных элементов.В случае отстутствия вывести сообщение про их отсутствие.
Очень нужно.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.04.2011, 22:36
Ответы с готовыми решениями:

Определить среднее арифметическое всех отрицательных элементов матрицы
С++ Двумерные массивы Здравствуйте, помогите с лабой. У самого не выходит. В матрице размерности 8 на 8 определить среднее...

Найти среднее арифметическое Sro всех отрицательных элементов матрицы
Найти среднее арифметическое Sro всех отрицательных элементов матрицы {aij}, где i = j = 1, ..., 4.

Вычислить среднее арифметическое всех отрицательных элементов массива
Даны вещественные массивы А, F. Для каждого массива определить: среднее арифметическое отрицательных элементов, среднее арифметическое...

3
Фрилансер
Эксперт С++
 Аватар для Dekio
5845 / 1226 / 499
Регистрация: 23.11.2010
Сообщений: 3,373
Записей в блоге: 1
07.04.2011, 22:48
C++
1
2
3
4
5
6
7
8
for(int i=0; i<n; i++)
for(int j=0; j<m; j++)
if(arr[i][j]<0)
{
sum+=arr[i][j];
cnt++;
}
cout<<abs(sum/cnt)<<endl;
0
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 9
07.04.2011, 22: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
#include <iostream>
#include <cmath>
#include <iomanip>
#include <ctime>
#include <conio.h>
#include "fun_console.h"
using namespace std;
 
void main()
{
    SetColor(2,0);
    srand((unsigned)time( NULL ));
    int i,j,s=0;
    int a[20];
 
for(int i=0; i<n; i++)
for(int j=0; j<m; j++)
if(arr[i][j]<0)
{
sum+=arr[i][j];
cnt++;
}
cout<<abs(sum/cnt)<<endl;

Что я делаю не так?

Добавлено через 1 минуту
Ошибка,реализовать нужно через класс!
0
 Аватар для Хитрый_КОТ
3 / 3 / 1
Регистрация: 21.11.2010
Сообщений: 30
07.04.2011, 23:51
В вашем коде не зарегестрированы переменные n и m
нужно в начало добавить размерность массива в данном случае 2х2
const int n=2;
const int m=2;
инициализировать массив
int arr[m][n];
потом писать ваш цикл

int a[20];
не верно инициализируется одномерный массив из 20ти элементов

Добавлено через 4 минуты
int i,j,s=0;
писать не нужно т.к вы уже задействовали i и j в цикле, а s у вас не используется
так же вы не задействовали переменную sum и cnt

Добавлено через 3 минуты
Так же есть подозрение что вы не до конца реализовали функцию
srand((unsigned)time( NULL ));
Добавлено через 17 минут
Вот рабочий код, размерность можно задать любую, ввод элементов массива осуществляется вручную


Добавлено через 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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// qwerty_1.cpp: определяет точку входа для консольного приложения.
 
#include "stdafx.h"
#include <windows.h>
#include <iostream>
 
 
using namespace std;
 
  int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
 
    //размерность массива
    const int N = 2, M = 2;
    //создание массива
    int r[N][M];
 
               cout << "Ручной ввод элементов масива" << endl;
           
    
 for (int i = 0; i < N; i++)
   {
       for (int j = 0; j < M; j++)
       {
           cout << "Введите элемент [" << i << "]["  << j << "] =";
          cin >> r[i][j];
       }
           //перейдем на новую строчку
           cout << endl;
   }
 
   //выведем массив на экран 
 cout << "Массив " << endl;
      for (int i = 0; i < N; i++)
   {
       for (int j = 0; j < M; j++)
       {
           cout << r[i][j] << " ";
 
       }
       cout << endl;
      }
 
            float col=0.0;
            float s=0.0;
            float d;
            for (int i = 0; i < N; i++)
            
               for (int j = 0; j < M; j++)
               {
           if (r[i][j] < 0)
           {
               s +=r[i][j];
               col++;
           } 
               }
            if (col == 0.0)
            { cout << "отрицательных элементов нет!!!" << endl;
            return 0;
            }
                
                d = s/col;
           {
               cout << "среднее отрицательное = " << d<< endl;
           }
            
 
           //перейдем на новую строчку
           cout << endl;
   
     cout << "Работа с масивом завершена" << endl;      
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.04.2011, 23:51
Помогаю со студенческими работами здесь

Найти среднее арифметическое отрицательных элементов матрицы
найти среднее арифметическое отрицательных элементов матрицы лежащей ниже главной диагонали и среднее арифметическое главной диагонали ...

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

Определить среднее арифметическое отрицательных элементов массива
Дано одномерный массив действительных чисел, состоящий из 10 элементов. Определить среднее арифметическое отрицательных элементов массива.

Определить среднее арифметическое отрицательных элементов последовательности
Составить алгоритм решения задачи и разработать программу на языке С++: С клавиатуры вводится последовательность из N чисел. Определить...

Найти среднее арифметическое всех отрицательных элементов в четных элементах двух одномерных массивов
Если можно, с кометнариями, сделайте программу, выходные данные которые нужно вводить с клавиатуры игенерировать с помощью функции random....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru