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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.06.2012, 17:07   #11
Аделинкка
Пользователь
 
Аватар для Аделинкка
 
Регистрация: 24.03.2012
Сообщений: 68
По умолчанию

Снова здравствуйте)Вопрос с работой со строчками и столбцами в массиве.Пишу эту прогу довольно долгое время)по настроению)
Код:
#include <iostream>
using namespace std;

int main ()
{
 int n, k, st,sv ;
 int i = 0, j = 0;
 double **mas;

 setlocale (LC_CTYPE, "rus");

 cout << "Введите количесво строк массива(к-во у-й): ";
 cin >> st; //Число строк
 n=st+1;

 cout <<"Введите количесво столбцов массива(к-во х): ";
 cin >>sv; //Число столбцов
 k=sv+n;

 mas = new double*[n]; //Выделение памяти под n-строк

 for(i = 0; i < n; i++)
   {
	 mas[i] = new double[k]; //Выделение памяти для каждой строки по k-столбцов 
   }

 for(i = 0; i < n; i++)
	{
		if (i<n-1)	  
		  cout <<"Введите коэффициенты(значения базисных переменных,свободные члены) "<<i+1<<" -го ур-ия"<<endl;
	    else 
	      cout <<"Введите целевую функцию с ОТРИЦАТЕЛЬНЫМ ЗНАКОМ: "<<endl;  
        for(j = 0; j < k; j++)
          {
		    cout<< "mas["<< i<< "][" <<j <<"]="; //Ввод массива 
            cin>> mas[i][j];
          } 
     }

 //вывод массива
cout<<endl;
cout<<endl<<"***********************************"<<endl;
cout<<" Таблица: "<<endl;
int min;
  for(i = 0; i < n; i++)
    {	  
	  for(j = 0; j < k; j++)
        {          
          cout<< " "<<mas[i][j]<<" ";
	    }
	  cout<<" "<<endl;
    }
   cout<<endl<<"***********************************"<<endl;

  // поиск минимального
min = 0;
  for (j = 1; j < sv; j++)
    if (mas[n-1][j] < mas[n-1][min]) min = j; 
  cout << " этот столбец ведущий "<<mas[n-1][min] << endl;
int t;

t=mas[n-1][min];

// поиск столбца
cout<<endl<<"***********************************"<<endl;
int myn = 0;
  for (i= 1; i < st; i++)
    if ((mas[i][k-1])<(mas[myn][k-1])) myn=i;
  cout << "эта строка ведущая "<<mas[myn][k-1]<< endl;
  cout<<endl<<"***********************************"<<endl;
  cout <<"коэффицент"<<mas[myn][min]<<endl;


//деление на выбранный элемент
for (j = 0; j < k; j++)
  {
  mas[myn][j]=mas[myn][j]/mas[myn][min];  //???не могу понять почему делит не всю строку до конца
  cout <<mas[myn][j];
   }
cout<<endl;

 //вывод массива
cout<<endl<<"***********************************"<<endl;
 cout<<endl;  
  for(i = 0; i < n; i++)
    {	  
	  for(j = 0; j < k; j++)
        {  
          cout<< " "<<mas[i][j]<<" ";
	    }
	    cout<<" "<<endl;
     }

//из элеметов соответствующих строк вычитаем элементы найденной нам строки
//??почему делит только одну строчку какую-нибудь (преимущественно вторую)
cout<<endl<<"***********************************"<<endl;
for(i = 0; i < myn; i++)
	{
		for(j = 0; j < k; j++)
		  {
			 mas[i][j]=mas[i][j]-mas[myn][j]*mas[i][min];
			 cout<< " "<<mas[i][j]<<" ";
		  }
	}
 //вывод массива
cout<<endl<<"***********************************"<<endl;
 cout<<endl;  
  for(i = 0; i < n; i++)
    {	  
	  for(j = 0; j < k; j++)
        {  
          cout<< " "<<mas[i][j]<<" ";
	    }
	    cout<<" "<<endl;
     }

 system ("pause");
 return 0;
}
У меня вопросы в проге..Запуталась ,почему работает не со всей строчкой до конца(Помогите разобраться,пожалуйста)
Нет,не блондинка!!
Аделинкка вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
заполнение матрицы DinamoBrynsk Помощь студентам 2 26.02.2011 17:16
заполнение матрицы XAPOH Помощь студентам 4 10.02.2011 23:50
Заполнение матрицы С++ Перфаратар Помощь студентам 7 20.10.2010 19:20
Заполнение матрицы -=aHTPoПоС=- Помощь студентам 3 06.11.2009 17:33
Заполнение матрицы Pedro Помощь студентам 3 22.04.2009 23:53