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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2012, 20:13   #1
mrG0bliN
Пользователь
 
Регистрация: 24.01.2012
Сообщений: 20
По умолчанию c++ билдер| преобразовать из консольного вида в оконный

помогите переделать
Код:
using std::endl;

void main()
{
	setlocale(LC_ALL, ".1251");
	system( "color 0A" );
	int n, i, j, k = 0, m, temp, h;
	double array[50][50], c, s;

	cout << "\Введите размерность матрицы: " << endl; 
	cin >> n;
	
	cout << "Введите элементы матрицы при " << endl;
	for( i = 0; i < n; i++ ) // строки
		for( j = 0; j < n + 1; j++ ) // столбцы
		{
			cout << "Введите элемент Х" << "[" << i + 1 << "][" << j + 1 << "] --> ";   
			cin >> array[i][j];
		}
		
	system( "cls" );

	cout << "\n\nПолученная матрица:\n" << endl;
	for( i = 0; i < n; i++ )
	{
		for( j = 0; j < n + 1; j++ ) // столбцы
			{
			cout << array[i][j] << " ";
			}
		cout << endl;
	}
//перестоновка элементов
while( k < n - 1)
{
	for( i = k; i < n - 1; i++ )
	{
		for( j = i + 1; j < n; j++)
		{
			if( array[i][i] < array[j][j] )
			{
				for( h = 0; h <= n; h++ )
				{
					temp = array[i][h];
					array[i][h] = array[j][h];
					array[j][h] = temp;
				}
			}
		}
	}
	//решение

	for( i = k + 1; i < n; i++ )
	{
		c = array[i][k]/array[k][k];
		for( j = 0; j <= n; j++ )
		{
			array[i][j] = array[i][j] - c*array[k][j]; 
		}
	}

	cout << "Полученная матрица:" << endl;
	for( i = 0; i < n; i++ )
	{
		for( j = 0; j < n + 1; j++ ) // столбцы
			{
			cout << array[i][j] << " ";
			}
		cout << endl;
	}
	k++;
}

double x[10], b[10];
for( i = 0; i < n; i++ )
{
	b[i] = array[i][n];
}

x[n - 1] = b[n - 1]/array[n-1][n-1];

	for ( i = n - 2; i >= 0; i--)
	{
		s = 0;
		for( j = i + 1; j < n; j++ )
		{	
			s += array[i][j]*x[j];
		}
		x[i] = ( b[i] - s )/array[i][i];
	}

	cout << "Ответы: \n" << endl;
	for( i = 0; i < n; i++ )
	cout << "x" << i + 1 <<" = " << x[i] << endl;

	system( "pause" );
}
mrG0bliN вне форума Ответить с цитированием
Старый 13.03.2012, 06:06   #2
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Введите размерность матрицы: - Компоненты Edit + UpDown
В UpDown устанавливаем Min = 0, Max = 9
Введите элемент Х: - Компонент StringGrid1 (размерностью UpDown).
Полученная матрица: - Кнопка "Произвести расчёт" и её обработчик события "Click".
Ответы: - StringGrid2 (заполняется в обработчике кнопки).
Чего сложного-то?
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder

Последний раз редактировалось Smitt&Wesson; 13.03.2012 в 06:12.
Smitt&Wesson вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Си++ Билдер]Преобразовать математическую формулу в нормальный для компилятора вид mrG0bliN Помощь студентам 7 24.01.2012 19:28
оконный интерфейс gavr14 C++ Builder 0 02.11.2011 01:15
оконный режим при графике Irenka Помощь студентам 9 06.06.2010 17:14
оконный режим при графике Irenka Помощь студентам 0 04.06.2010 17:36
Оконный интерфейс пользователя bagfinder Помощь студентам 1 18.06.2009 21:48