Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.06.2013, 23:07   #1
Solidera
Пользователь
 
Регистрация: 26.03.2013
Сообщений: 14
По умолчанию С++: Изменение элементов матрицы

Здравствуйте.

Текст задачи: Если число отрицательных элементов матрицы превышает число положительных, увеличить каждый её элемент на величину среднего арифметического всех элементов. Выделить функции для решения задачи и ввода-вывода массивов, расположить их желательно в отдельном файле.

Я ещё не выделяла все функции, потому что встретилась с непонятной ошибкой. Жалобу видно на скриншоте. Язык начала учить совсем недавно, поэтому не знаю, что делать.

Код:
#include <iostream>

using namespace std;
int main()
{
 unsigned int n,m;
 std::cout<<"Please input the number of lines: ";
 scanf("%d", &n);
 std::cout<<"Please input the number of columns: ";
 scanf("%d", &m);

 std::cout<<"Please input some elements: \n";
 int **matrix;
 for (unsigned int i = 0; i < n; i++)
     for (unsigned int j = 0; j < m ; j++)
         scanf("%d", &matrix[i][j]);

 std::cout<<"\n";
 std::cout<<"Here is your array: \n";
 for(unsigned int i=0; i<n; i++)
 {
  for(unsigned int j=0; j<m; j++)
  printf("%4d", matrix[i][j]);
  printf("\n");
  }

 void task(int **mass,unsigned int N, unsigned int M);
 {
 int **mass;
 int count = 0;
 int sum = 0;

 for(unsigned int i = 0; i < n;i++)
 {
     for(unsigned int j = 0; j < m;j++)
     {
     if(mass[i][j]<0){ count--; }
     else{ count++; }
     sum+=mass[i][j];
     }
 }

 sum /= m*n ;
 if(count < 0)
 {
     for(unsigned int i = 0; i < n;i++)
     {
         for(unsigned int j = 0; j < m;j++)
         {
         mass[i][j]+=sum;
         }
     }
 }
 }

 task(matrix, n,m);

 std::cout<<"\n";
 std::cout<<"The task is done: \n";

 for(unsigned int i=0; i<n; i++)
 {
      for(unsigned int j=0; j<m; j++)
              printf("%10d", matrix[i][j]);
              printf("\n");
 }
 system("pause");
 return(0);
}
Пожалуйста, посмотрите код и укажите на другие недочёты, которые, уверена, обязательно обнаружатся.
Заранее спасибо.
Изображения
Тип файла: png Безымянный.png (2.2 Кб, 28 просмотров)
Solidera вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
среднее арифметическое значение элементов матрицы mxm. вектор из минимальных элементов (Бейсик) Люстик Помощь студентам 1 17.03.2011 08:20
Сумма четных элементов матрицы. Произведение элементов 3-го столбца. Минимальный элемент матрицы. renovare Помощь студентам 2 03.07.2009 21:13
Найти максимальный из положительных элементов матрицы и сумму отрицательных элементов. bessonov12 Microsoft Office Excel 7 04.05.2009 05:44
количество элементов матрицы, больших среднего арифмитического всех её элементов finch Помощь студентам 3 27.08.2007 15:48