дополнить...

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
Respected
Сообщения: 15
Зарегистрирован: 08 мар 2013, 07:09

Код: Выделить всё

/* транспонировать матрицу, используя функции. я матрицу транспонировал, а через функцию не знаю как правильно делать, нужна помощь :confused: */

#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
main()
{
	clrscr();
	randomize();
	int a[100][100];
	int k, l, i, j, temp;
	cout<<"k=";
	cin>>k;
	cout<<"l=";
	cin>>l;
	for(i=0; i<k; i++)
		for(j=0; j<l; j++)
			a[i][j]=random(20);
	cout<<"\n";
	for(i=0; i<k; i++)
	{
		for(j=0; j<l; j++)
			cout<<" "a[i][j];
		cout<<"\n";
	}
	for(i=0; i<k; i++)
		for(j=0; j<l; j++)
		{		
			temp=a[i][j];
			a[i][j]=a[j][i];
			a[j][i]=temp;
		}
	cout<<"Transp.\n";
	for(i=0; i<k; i++)
	{
		for(j=0; j<l; j++)
			cout<<" "<<a[j][i];
		cout<<"\n";
	}
	while(!kbhit());
	return 0;
}
interacia
Сообщения: 5
Зарегистрирован: 25 янв 2013, 20:15
Контактная информация:

Код: Выделить всё

#include<iostream.h>
 #include<conio.h>
 #include<stdlib.h>
// транспонировать матрицу, используя функции.
void MOnitor(int v[100][100], int n,int m)
{ // функция вывода на экрын
for(int ii=0; ii<n; ii++)
     {
      for(int jj=0; jj<m; jj++){
          cout.width(5);
          cout<<v[ii][jj];
          }
      cout<<"\n";
     }
}

void TikTak(int& ii, int& jj)
{ // функция обмена значениями
int temp;
temp=ii;
ii=jj;
jj=temp;
}

void Transp(int v[100][100], int& n, int& m)
{ // функция транспонирования матрицы
     for(int ii=0; ii<n; ii++)
     for(int jj=0; jj<m; jj++)
         {
             TikTak(v[ii][jj],v[jj][ii]);// вызов функции
         }
TikTak(n,m);// вызов функции
}

void MasRandom(int v[100][100], int& n, int& m)
{ // функция заполнения матрицы
     for(int ii=0; ii<n; ii++)
         for(int jj=0; jj<m; jj++)
             v[ii][jj]=random(20);
}

main()
 {
system("chcp 1251 > nul"); // руский язык в консоли
     clrscr();
     randomize();
     int a[100][100];
     int k, l, i, j, temp;
     cout<<"k=";
     cin>>k;
     cout<<"l=";
     cin>>l;
 MasRandom(a,k,l); // вызов функции
 cout<<"\n";
 MOnitor(a,k,l);   // вызов функции
 Transp(a,k,l);    // вызов функции
 cout<<"Transp.\n";
 MOnitor(a,k,l);   // вызов функции

system("PAUSE");  // пауза при выходе можно убрать
     return 0;
 }
Вот пример.
Ответить