Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ande

[Resolvido] Troca de Posições em Matrizes

Recommended Posts

Ola a todos do forum

 

Estou tentando fazer o seguinte programa;

 

Em uma matriz de 3 x 3 informada com valores inteiros, procure o menor valor e troque com a primeira posição (0,0) e o maior número na posição (3,3). Imprima a matriz.

 

Não estou conseguindo fazer a troca entre o menor numero e o conteudo da posição (0,0) e o maior numero e o numero da posição (3,3).

 

Até agora só consegui fazer com que o menor fique na posição (0,0) e o maior na posição (3,3) mas sem realizar a troca.

 

#include<iostream.h>
#include<conio.h>
# define i 3
# define j 3
int main()

{
	int M[3][3], T[i][j], l, c, pos;
	
	for(l=0;l<3;l++)
	   {
		 for(c=0;c<3;c++)
			{
			 cout<<"Digite um numero["<< l <<"]["<< c <<"]:";
			 cin>>M[l][c];
			} 
	   }
	   
  cout<<" \n Matriz sem alteracao: \n";
	 
	for(l=0;l<3;l++)
	   {
		 for(c=0;c<3;c++)
			{
			 cout<<endl<<M[l][c];
			} 
	   }	
	
	cout<<"\n";
	
	int maior = M[0][0];
	int menor = M[0][0];  
		 
	for(l=0;l<3;l++)
	   {
		 for(c=0;c<3;c++)
			if(M[l][c] > maior)
			   {
				maior = M[l][c];
			   }
	   }	
		 
	for(l=0;l<3;l++)
	   {
		 for(c=0;c<3;c++)

			if(M[l][c] < menor)
			   {
				menor = M[l][c];
			   }  
	   }	
		
	   cout<<"\n O maior numero: "<<maior<<"\n";
	   cout<<"\n O menor numero: "<<menor<<"\n";
	   
	  cout<<" \n Matriz com alteracao: \n";
		 
		 T[0][0]=M[0][0];
		 M[0][0]=menor;
		 
		 T[2][2]=M[2][2];
		 M[2][2]=maior;	   
		 
		for(l=0;l<3;l++)
		   {
			 for(c=0;c<3;c++)
				{   
				 cout<<endl<<M[l][c];
				} 
		   }	   
			   
		   
   getch();
		
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você vai precisar guardar o valor do elemento que vai realizar a troca primeiro antes de realizar a troca. Veja este exemplo:

 

void swap(int *a, int *b)
{
	int temp = *a;
	*a = *b;
	*b = temp;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu José Enésio, era disso que eu precisava!

 

Você vai precisar guardar o valor do elemento que vai realizar a troca primeiro antes de realizar a troca. Veja este exemplo:

 

void swap(int *a, int *b)
{
	int temp = *a;
	*a = *b;
	*b = temp;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.