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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.12.2015, 14:49   #1
Prime97
Новичок
Джуниор
 
Регистрация: 29.12.2015
Сообщений: 2
По умолчанию Работа с матрицами

19. В матрице размерности 9 на 9 найти номера максимальных элемен-тов в каждом столбце. В каждой третьей строке определить сумму элементов, расположенных до элемента равного нулю. Определить количество отрица-тельных элементов матрицы.
Программу написал, но сумму не верно считает
Код:
#include<iostream>
#include<string>
#include<iomanip>
#include<time.h>
#include<stdlib.h>
using namespace std;
int main()
 {
  const int n=9;
  const int m=9;
  int Mass[n][m],i,j,S,nmaxstr=0,nmaxstl=0,k,b,Summ=0,f,Kolvo;
  srand(time(0));
   cout<<"For keyboard input, press 1, to enter a random number, press 2"<<endl;
   cin>>b;
   cout<<endl;
      switch(b)
       {
         case 1:
          {cout<<"Enter the matrix elements"<<endl;
            for(i=0;i<n;i++)
             {for(j=0;j<m;j++)
              {cin>>Mass[i][j];}
              cout<<endl;}
           cout<<"The initial matrix:"<<endl;
           for(i=0;i<n;i++)
            {for(j=0;j<m;j++)
            {cout<<setw(3)<<Mass[i][j]<<" ";}
             cout<<endl;}
             cout<<endl;
             }break;
         case 2:
          {cout<<"The initial matrix:"<<endl;
           for(i=0;i<n;i++)
           {for(j=0;j<m;j++)
             {Mass[i][j]=rand()%30-15;
              cout<<setw(3)<<Mass[i][j]<<" ";}
              cout<<endl;}}
              break;
         default:
          {cout<<"The number is entered incorrectly. Try it again."<<endl;
           ;
           }
      }                

         {for(j=0;j<m;j++)
          {for(i=0;i<n;i++)
            {if(Mass[nmaxstr][nmaxstl]<Mass[i][j])
             {
              nmaxstr=i;
              nmaxstl=j;
             }
            }
            cout<<"Maxsimalni element stolbtsa:"<<"["<<nmaxstr<<"]["<<nmaxstl<<"]="<<Mass[nmaxstr][nmaxstl]<<endl;
            Mass[nmaxstr][nmaxstl]=0;}
            
}
           
 
    

	{
			for(Summ=0,f=0;f<m;f=f+3)
		
      {for(k=0;k<n;k++)
         {
          if(Mass[f][k]!=0)
           {
			 Summ=Summ+Mass[f][k];
		  }
          else 
           break;
         }
         cout<<"Summa elementov stroki["<<f<<"]="<<Summ<<endl;
        Summ=0;
         }}
        
        
              
		    for(i=0;i<n;i++)
       
	   for(j=0;j<m;j++)
        {if(Mass[i][j]<0)
         Kolvo++;}
         cout<<"Kolichestvo otritsatelnih elementov="<<Kolvo-1<<endl;
        system("pause");
            return 0;}

Последний раз редактировалось Вадим Мошев; 29.12.2015 в 14:52.
Prime97 вне форума Ответить с цитированием
Старый 29.12.2015, 15:11   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
В матрице размерности 9 на 9 найти номера максимальных элемен-тов в каждом столбце. В каждой третьей строке определить сумму элементов, расположенных до элемента равного нулю. Определить количество отрица-тельных элементов матрицы.
Код:
int a[9][9], max[9]={0},sum[9]={0},neg=0,i,j;

for(i=0;i<9;i++){
 bool nol=false;
 for(j=0;j<9;j++){
  a[i][j]=rand()%100; printf("%5d",a[i][j]);

  //номера максимальных элемен-тов
  max[j]=(i==0 || a[i][j]>max[j])?a[i][j]:max[j];

  //определить сумму элементов
  if(a[i][j]==0) nol=true;  if(!nol) sum[i]+=a[i][j];

  //Определить количество отрица-тельных элементов 
  if(a[i][j]<0) neg++;
 }; printf("\n");
}; printf("\n");

printf("\nномера максимальных элемен-тов: "); for(i=0;i<9;i++) printf("%5d",max[i]);
printf("\nсумму элементов: "); for(i=0;i<9;i+=3) printf("%5d",sum[i]);
printf("\nколичество отрица-тельных: %5d",neg);
getchar();
Подойдет такая реализация вместо твоей?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.12.2015, 15:23   #3
Prime97
Новичок
Джуниор
 
Регистрация: 29.12.2015
Сообщений: 2
По умолчанию

к сожалению, надо что-то вроде моей
Prime97 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с матрицами с++ linberg Помощь студентам 3 09.11.2013 18:59
Работа с матрицами C++ OldUnion Помощь студентам 0 09.11.2012 21:25
С++ работа с матрицами w0lf16 Помощь студентам 2 28.11.2010 14:43
Работа с матрицами (норма матрицы, работа со строками) Neitrosha Помощь студентам 1 26.11.2010 20:19
Работа с матрицами AlexVI Общие вопросы C/C++ 2 22.07.2010 09:46