Logo Hardware.com.br
Chapolaa
Chapolaa Novo Membro Registrado
4 Mensagens 0 Curtidas

Contagem de repetição na matriz, tenho duvidas

#1 Por Chapolaa 02/06/2015 - 11:26
- Código fonte em Dev C++, usando programação estruturada (métodos).

Escreva um programa que carregue aleatoriamente uma matriz de 20 x20 com 400 números inteiros compreendidos entre 1 e 20.

A partir da matriz carregada, apresente os seguintes resultados:

1) Quantas vezes cada numero aparece na matriz
2) Qual o numero que aparece mais vezes
3) Qual o segundo numero que aparece mais vezes
4) Qual o número que aparece menos vezes
5) Qual o segundo numero que aparece menos vezes
6) Quais os números que aparecem exatamente 17 vezes na matriz
7) Quais os números que aparecem exatamente a quantidade de vezes igual ao numero

Obs: Os itens 2, 3, 4 e 5 devem ser implementados usando funções.
Os itens 1, 6 e 7 devem ser implementados usando procedimento.
Chapolaa
Chapolaa Novo Membro Registrado
4 Mensagens 0 Curtidas
#3 Por Chapolaa
02/06/2015 - 16:57
WilliamPinheiro disse:
Quais são suas dúvidas?

Consegui fazer a matriz 20x20 e fazer a contagem da repetição dos números e só. Não sei como fazer o resto. Me ajuda por favorrrr

Foi isso que eu fiz até agora:

[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]
using namespace std;

int i,j;
const int lin=20,col=20;
int x[lin][col];

void mostra_matriz(){
srand(time(NULL));
for (i=0;i for (j=0;j x[j]=rand()%20+1;
cout<[j]<<" ";
}
}
}

void repete() { // mostra os números repetidos da matriz
for (int n=1; n<=20; n++){
int contador=0;
for (i=0;i for (j=0;j if (x[j]==n)
contador++;
cout< }
}


int main (){ //Início do Programa
mostra_matriz();
cout< cout< repete();
cout< cout< return 0;
}
tpcvasco
tpcvasco General de Pijama Registrado
2.9K Mensagens 330 Curtidas
#4 Por tpcvasco
02/06/2015 - 20:23
Minha sugestão: criar um vetor de 20 posições, onde cada uma guarda o número de vezes. Vc já tem essa contagem, basta então guardar no vetor.
A partir daí, para os itens 6 e 7 é só testar, respectivamente, se o valor do vetor é igual a 17, ou se o índice do vetor é igual ao valor.
Para os outros problemas, eu ordenaria o vetor...
"Milhouse: - Médicos e bombeiros são heróis.
Bart Simpson: - Olha, as casas continuam pegando fogo e as pessoas continuam doentes. Os verdadeiros heróis são os Schwarzenegger's, os Stallone's, e, em menores proporções, os Vandame's..."
Chapolaa
Chapolaa Novo Membro Registrado
4 Mensagens 0 Curtidas
#5 Por Chapolaa
02/06/2015 - 20:51
tpcvasco disse:
Minha sugestão: criar um vetor de 20 posições, onde cada uma guarda o número de vezes. Vc já tem essa contagem, basta então guardar no vetor.
A partir daí, para os itens 6 e 7 é só testar, respectivamente, se o valor do vetor é igual a 17, ou se o índice do vetor é igual ao valor.
Para os outros problemas, eu ordenaria o vetor...

Me ajuda a fazer isso pf, sei que é fácil mas não estou conseguindo =/
WilliamPinheiro
WilliamPinhe... Tô em todas Registrado
594 Mensagens 221 Curtidas
#6 Por WilliamPinhe...
03/06/2015 - 07:17
Chapolaa disse:
Me ajuda a fazer isso pf, sei que é fácil mas não estou conseguindo =/

Mas ele já está te ajudando a fazer, ele disse o que tem que fazer.

Agora duvido que alguém vai te dar o código pronto, o bom programador dá seus pulos para solucionar os problemas, peça orientação ao seu professor, explique suas dificuldades, afinal o propósito do exercício além de aplicar o conhecimento adquirido, é de provocar a sua capacidade de se virar diante dos desafios e como meu professor dizia: "Eu até posso te dar a solução, mas será que o seu gestor vai fazer o mesmo por você em uma situação real?".

Abraço!
tpcvasco
tpcvasco General de Pijama Registrado
2.9K Mensagens 330 Curtidas
#7 Por tpcvasco
03/06/2015 - 09:06
tpcvasco disse:
Minha sugestão: criar um vetor de 20 posições, onde cada uma guarda o número de vezes. Vc já tem essa contagem, basta então guardar no vetor.


Pra essa primeira parte basta
int cont[20];
for (i=0;i for (j=0;j cont[x[ i][j]-1]++;

Pronto, agora é só utilizar "cont" nos problemas. Deixo isso pra vc resolver.
"Milhouse: - Médicos e bombeiros são heróis.
Bart Simpson: - Olha, as casas continuam pegando fogo e as pessoas continuam doentes. Os verdadeiros heróis são os Schwarzenegger's, os Stallone's, e, em menores proporções, os Vandame's..."
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal