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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2019, 20:13   #1
Samaras
Новичок
Джуниор
 
Регистрация: 04.01.2019
Сообщений: 3
По умолчанию Изменить столбцы на строки

После задания размеров матрицы и интервалов первая кнопка создает матрицу. При нажатии на 2ю кнопка она считает сумму элементов в столбцах, в которых первый элемент по модулю меньше 1. Но как теперь изменить код так, что она делала тоже самое, но в строках. Т.е. считало сумму элементов в тех строках, в которых первый элемент не превышает по модулю 1.

Код:
#pragma endregion
		int n,m,k1,k2,s;
		DataTable ^t1,^t2;
		array<double,2> ^A;
		String ^ tmp;

	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {

				 Random^ generator = gcnew Random;
				 t1=gcnew DataTable();
				 t2=gcnew DataTable();
				 n=Convert::ToInt32(textBox1->Text);
				 m=Convert::ToInt32(textBox2->Text);
				 A = gcnew array<double,2>(n,m);
				 int i,j;
				 t2->Rows->Add();
					for(i=1;i<=n;i++)
					{
						t1->Rows->Add();
					}
					for(j=1;j<=m;j++)
					{
						t1->Columns->Add();
						t2->Columns->Add();
					}
		    	 k1=Convert::ToInt32(textBox3->Text);
				 k2=Convert::ToInt32(textBox4->Text);
					 for(i=0;i<=(n-1);i++)
					 {
						 for(j=0;j<=(m-1);j++)
						 {
							 int a=generator->Next(k1,k2+1);
							 A[i,j]=a;
							 t1->Rows[i][j]=A[i,j];
						 }
					 }					 
					dataGridView1->DataSource=t1;	
					dataGridView2->DataSource=t2;
			 }
private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) 
		 {
			 double s=0;
			 int i,j;
			 for (j=0; j<m; j++)  
				 {
					 if( Math::Abs(A[0,j])<=1 ) 
					{  for (i=0; i<n; i++) 
						s=s+ A[i,j];
					    t2->Rows[0][j] = s; 
					} 

					   
				 }
		 }


};
}
Samaras вне форума Ответить с цитированием
Старый 04.01.2019, 20:30   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

У элементов матрицы два индекса. Если вы фиксировали один и бегали по другому, то как сделать наоборот? - зафиксировать другой и бегать по первому, Л - логика.
p51x вне форума Ответить с цитированием
Старый 04.01.2019, 20:49   #3
Samaras
Новичок
Джуниор
 
Регистрация: 04.01.2019
Сообщений: 3
По умолчанию

Я правильно понимаю что нужно изменить всего 3 строчки? Со столбцами все безумно просто по примерам, со строками сложнее разбираюсь
Samaras вне форума Ответить с цитированием
Старый 04.01.2019, 21:21   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

А чем по вашему отличаются столбцы от строк? В чем одни сложнее других?
p51x вне форума Ответить с цитированием
Старый 04.01.2019, 22:52   #5
Samaras
Новичок
Джуниор
 
Регистрация: 04.01.2019
Сообщений: 3
По умолчанию

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


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
StringGrid строки и столбцы crazyMYXA Общие вопросы Delphi 6 12.01.2016 20:54
доминируемые строки и столбцы L3zh1Y Помощь студентам 0 07.02.2012 21:21
StringGrid столбцы и строки atenon C++ Builder 0 24.02.2011 20:16
Разделение строки на столбцы. Vasek007 Microsoft Office Excel 14 05.10.2010 18:48