Ir ao conteúdo
  • Cadastre-se

C++ Mostrar menor número da matriz


Rafaela Soares

Posts recomendados

  

#include<stdio.h>
#include<locale.h>
#include<time.h>
#include<stdlib.h>

#define L 3
#define C 5
int main(){
	setlocale(LC_ALL, "Portuguese");
	int i, j, matriz[L][C], menor ;
	
	 srand(time(NULL));
	for(i=0; i<L; i++){
		for(j=0; j<C; j++){
		matriz[i][j]=rand()%100;		
		printf("\n [%d][%d]= %d \t", i, j, matriz[i][j]);
	}
}

	for(i=0; i<L; i++){
		for(j=0; j<C; j++){
		
		if(matriz[i][j] < menor){
				menor = matriz[i][j];
			}
	
		}
	
}
printf("\nA matriz de menor valor é: [%d][%d]", matriz[L][C] );
	
	return 0;
}

/*7. Gere uma matriz 3x5 aleatoriamente com números de 1 até 100. 


Por fim, mostre o número e a posição (linha e coluna) do menor valor. */

 

Nada tá dando certo, alguém pode me ajudar? Ele roda, mas não faz o que eu quero que faça. Obrigada.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Rafaela Soares       seu rand está gerando sempre o mesmo valor , precisa colocar a semente do rand para que gere valores aleatórios ,  você precisa inicializar a variável menor com o primeiro valor da matriz para aí depois fazer as comparações ,  e no final você não colocou a variável menor na hora de imprimir . então seu código com algumas modificações poderia ser assim  :

#include <stdio.h>
#include <conio.h>
#include <locale.h>
#include <time.h>
#include <stdlib.h>
#define L 3
#define C 5
int main(){
    srand(time(NULL));/* para gerar aleatório mesmo , senão repete o mesmo sempre */
    system("color f9");/* 1º cor da tela 2º cor da letra */
    setlocale(LC_ALL,"Portuguese");
    int i,j,matriz[L][C],menor,posicaoL=0,posicaoC=0;
    srand(time(NULL));
    for(i=0; i<L; i++){
        for(j=0; j<C; j++){
            matriz[i][j]=rand()%100+1;
            printf("\n [%d][%d]= %d \t",i,j,matriz[i][j]);
        }
        printf("\n");
    }
    menor=matriz[0][0];/* inicializa a variával com o primeiro valor da matriz */
    for(i=0; i<L; i++){
        for(j=0; j<C; j++){
            if(matriz[i][j] < menor){
                menor = matriz[i][j];/* memnor recebe o menor valor até agora */
                posicaoL=i;/* a posição L recebe a posição da Linha  onde está o menor valor */
                posicaoC=j;/* a posição C recebe a posição da coluna onde está o menor valor */
            }
        }
    }
    printf("\nO menor valor na matriz é --: %d na posição -> [ %d ] [ %d ]\n\n\n",
                                                         menor,posicaoL,posicaoC);
    printf("      Tecle !");
    getch();
    return 0;
}

 

  • Amei 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!