Ir ao conteúdo

Posts recomendados

Postado

Crie um programa capaz de ler os dados de uma matriz quadrada de inteiros. Ao final da leitura o programa deverá imprimir o número da linha que contém o menor dentre todos os números lidos. Utilize uma função para encontrar o menor da linha.

 

O que tem de errado no meu código ??

 

Eu escolhi uma matriz 2x2, depois fiz uma função que procura o menor valor (a função "menor") depois disso fiz uma função que faz a leitura da matriz 2x2 (a função main).

Então eu coloquei a função menor na função main.

//Questão 1 de funções:

#include<stdio.h>

void menor(int vet[][]){

int lin,col,menor;

for(lin=0;lin<2;lin++){
		for(col=0;col<2;col++){
			if(vet[lin][col]<menor){
				menor = vet[lin][col]
			}
		}
		
	}
	
	printf("%i",menor);
}


int main(){
	
	int var[2][2],linha,coluna;
	
	for(linha=0;linha<2;linha++){
		for(coluna=0;coluna<2;coluna++){
			printf("Digite o valor da posicao de linha :%i  coluna : %i\n\n",linha,coluna);
			scanf("%i",&var[linha][coluna]);
		}
		
	}
	
	menor(var);
	
			}
		}
		
	}
	
}

 

  • Curtir 1
Postado
3 minutos atrás, VictorCalebe disse:

void menor(int vet[][]){

int lin,col,menor;

variáveis não podem ter o mesmo nome de funções

e menor deve ser iniciado

menor = vet[0][0] //primeiro valor da matriz

  • Curtir 1
Postado

@Gabriel_Moro  Amigo, ainda não está funcionado. 

 

//Questão 1 de funções:

#include<stdio.h>

void menorvalor(int vet[][]){

int lin,col,menor;

for(lin=0;lin<2;lin++){
		for(col=0;col<2;col++){
			if(vet[lin][col]<menor){
				menor = vet[0][0]
			}
		}
		
	}
	
	printf("%i",menor);
}


int main(){
	
	int var[2][2],linha,coluna;
	
	for(linha=0;linha<2;linha++){
		for(coluna=0;coluna<2;coluna++){
			printf("Digite o valor da posicao de linha :%i  coluna : %i\n\n",linha,coluna);
			scanf("%i",&var[linha][coluna]);
		}
		
	}
	
	menorvalor(var);
	
			}
		}
		
	}
	
}
Citação

  [Error] declaration of 'vet' as multidimensional array must have bounds for all dimensions except the first

  • Curtir 1
Postado
#include <stdio.h>
#include <stdlib.h>

void menorvalor(int vet[][2]){

    int lin,col,menor = vet[0][0];

    for(lin=0;lin<2;lin++){
		for(col=0;col<2;col++){
			if(vet[lin][col]<menor){
				menor = vet[lin][col];
			}
		}

	}

	printf("%i",menor);
}


int main(){

	int var[2][2],linha,coluna;

	for(linha=0;linha<2;linha++){
		for(coluna=0;coluna<2;coluna++){
			printf("Digite o valor da posicao de linha :%i  coluna : %i\n\n",linha,coluna);
			scanf("%i",&var[linha][coluna]);
		}

	}

	menorvalor(var);
}

o código tinha uma referencia incompleta da matriz, faltava um ; e tinha } a mais

e na função menorvalor tu não entendeu muito bem

menor = vet[0][0]; //inicia menor com um valor possível existente na matriz

for(int i=0;i<2;i++)

     for(int j=0;j<2;j++)

           if(vet[j]<menor)

                   troca

 

  • Curtir 1

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!