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

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

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

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

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

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

Доброго времени суток.
Прошу помочь самую малость с лабораторной на си. (Borland Builder)
Задание звучит следующиим образом:
Отсортировать двумерный массив m*n по столбцам по неубыванию. Массив вводиться пользователем, сделать требуется в "форме".
Лабораторная работа написана, но в консоле. Не нашел как ввести двумерный массив в форме. Если правильно понимаю, то двумерный, как и одномерный, вводиться через TMemo. С разбиением текста в мемо по строкам проблем нет.
Подскажите пожалуйста либо другой способ, либо способ перевода строки в мемо в одномерный массив.

Последний раз редактировалось Draid; 06.03.2008 в 21:05.
Draid вне форума Ответить с цитированием
Старый 07.03.2008, 01:09   #2
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

TStringGrid
Carbon вне форума Ответить с цитированием
Старый 07.03.2008, 22:06   #3
Draid
Новичок
Джуниор
 
Регистрация: 06.03.2008
Сообщений: 2
По умолчанию

Спасибо за ответ.
Все работает, но только с квадратными матрицами. Честно говоря, не могу понять с чем связано такое ограничение и как его убрать.

Код:
{
int M[100][50];
int i,j,n,m,n1,st,t;
n=StrToInt(Edit1->Text);
m=StrToFloat(Edit2->Text);
//Ввод массива
for (i=0; i<n; i++)
	{
	 for (j=0; j<m; j++)
		{
		 M[i][j]=StrToInt(StringGrid1->Cells[i][j]);
		}
	}
//Сортировка
for (st=0; st<m; st++)
 {for(i=n-1; i>0; --i )
		{for(j=0; j<i; ++j )
			{if(M[st][j]>M[st][j+1])
				{
				 t = M[st][j];
				 M[st][j] = M[st][j+1];
				 M[st][j+1] = t;
				}
			}
		}
 }
//Вывод массива
for (i=0; i<n; i++)
	{
	 for (j=0; j<m; j++)
		{
		 StringGrid2->Cells[i][j]=IntToStr(M[i][j]);
		}
	}
}
Draid вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерный Массив n01R Помощь студентам 9 19.12.2009 16:41
Двумерный массив... slim5 Помощь студентам 2 20.06.2008 23:16
Двумерный массив Jodu Помощь студентам 18 05.12.2007 22:44
Двумерный массив help Imperceptible Паскаль, Turbo Pascal, PascalABC.NET 25 02.03.2007 20:00