Ir ao conteúdo
  • Cadastre-se

Duvida matriz


Waguinhu

Posts recomendados

Bom, não estou conseguindo pensar em um raciocino logico pra essa questao, gostaria que me ajudassem, com apenas algumas dicas.

Escrever um algoritmo que lê uma matriz A(15,5) e a escreva. Verifique, a seguir, quais os elementos de A que estão repetidos e quantas vezes cada um está repetido. Escrever cada elemento repetido com uma mesagem dizendo que o elemento aparece X vezes em A.

o maximo que consegui fazer, foi a base...

Codigo:

#include<iostream>

using namespace std;

int main()

{

int a[15][5],i,j;

for(i=0;i<15;i++)

{

for(j=0;j<5;j++)

{

cout<<"Entre com um numero para a linha "<<i<<" coluna "<<j<<": ";

cin>>a[j];

}

}

for(i=0;i<15;i++)

{

for(j=0;j<5;j++)

{

cout<<a[j]<<" ";

}

cout<<endl;

}

system("pause");

}

se puderem me ajudar, obrigado.

Link para o comentário
Compartilhar em outros sites

A primeira forma que me vem à cabeça não foi muito elegante, nem acho que seja a mais eficiente, mas ela resolve seu problema.

Pense o seguinte:

[*] Você vai ter que varrer a matriz para saber quantos elementos repetidos há;

[*] Você pode armazenar os elementos repetidos numa matriz de M linhas e 2 colunas. Nesta matriz, a coluna #1 contém os elementos da matriz e a coluna #2 contém o número de vezes que ele aparece;

[*] Outra forma seria utilizar a matriz A não com 2, mas com 3 dimensões, ao invés de criar outra matriz. Utilizaria a mesma ideia de com duas matrizes.

Tente fazer agora.

Link para o comentário
Compartilhar em outros sites

A primeira forma que me vem à cabeça não foi muito elegante, nem acho que seja a mais eficiente, mas ela resolve seu problema.

Pense o seguinte:

[*] Você vai ter que varrer a matriz para saber quantos elementos repetidos há;

[*] Você pode armazenar os elementos repetidos numa matriz de M linhas e 2 colunas. Nesta matriz, a coluna #1 contém os elementos da matriz e a coluna #2 contém o número de vezes que ele aparece;

[*] Outra forma seria utilizar a matriz A não com 2, mas com 3 dimensões, ao invés de criar outra matriz. Utilizaria a mesma ideia de com duas matrizes.

Tente fazer agora.

Complicou cara, irei ler um pouco mais sobre matrizes para tentar entender a tua mensagem, se tu o fizesses talvez ajudaria ainda mais na compreensão

Link para o comentário
Compartilhar em outros sites

Tente estudar um pouco e, pelo menos, esboçar alguma coisa.

Eu posso ajudá-lo, mas não farei para você, justamente porque quero ajudar.

Mas a ideia em si é simples. Tomemos, por exemplo, uma matriz 2x2 inicializada da seguinte forma:


Coluna #0 #1
Linha
#0 [5] [2]
#1 [3] [2]

Em C, para acessar um elemento desta matriz, fazemos A[M][N], sendo A o nome da matriz, M a linha desejada e N a coluna. Os índices M e N começam em 0, obrigatoriamente.

Podemos tomar uma matriz B de tamanho [M*N][2].

Por que este tamanho? Porque nós precisamos de, ATÉ[1] M*N espaços para guardar os elementos da matriz A. 2 colunas para que, em uma coluna armazenemos o elemento em si e na outra a quantidade de vezes em que ele aparece.

Para o nosso exemplo, a matriz B ficaria da seguinte forma, ao fim da execução do programa:


Coluna #0 #1
Linha
#0 [5] [1]
#1 [2] [2]
#2 [3] [1]
#3 [] []

Espero que tenha ficado mais claro agora.

[1] Por que ATÉ? Porque, caso haja elementos repetidos, ocuparemos menos espaços preenchendo a matriz, como é o exemplo.

Link para o comentário
Compartilhar em outros sites

Tente estudar um pouco e, pelo menos, esboçar alguma coisa.

Eu posso ajudá-lo, mas não farei para você, justamente porque quero ajudar.

Mas a ideia em si é simples. Tomemos, por exemplo, uma matriz 2x2 inicializada da seguinte forma:


Coluna #0 #1
Linha
#0 [5] [2]
#1 [3] [2]

Em C, para acessar um elemento desta matriz, fazemos A[M][N], sendo A o nome da matriz, M a linha desejada e N a coluna. Os índices M e N começam em 0, obrigatoriamente.

Podemos tomar uma matriz B de tamanho [M*N][2].

Por que este tamanho? Porque nós precisamos de, ATÉ[1] M*N espaços para guardar os elementos da matriz A. 2 colunas para que, em uma coluna armazenemos o elemento em si e na outra a quantidade de vezes em que ele aparece.

Para o nosso exemplo, a matriz B ficaria da seguinte forma, ao fim da execução do programa:


Coluna #0 #1
Linha
#0 [5] [1]
#1 [2] [2]
#2 [3] [1]
#3 [] []

Espero que tenha ficado mais claro agora.

[1] Por que ATÉ? Porque, caso haja elementos repetidos, ocuparemos menos espaços preenchendo a matriz, como é o exemplo.

o problema é passar isso que você disse pro computador heauheauea

vou queimar uns neuronios aqui depois posto o resultado

Link para o comentário
Compartilhar em outros sites

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!