Ir ao conteúdo

C programa em c - matriz


Ir à solução Resolvido por RobertNL77,

Posts recomendados

Postado

Alguém pode me ajudar nesse código?

*Faça um programa que peça ao usuário para digitar os valores de uma matriz quadrada de números inteiros de dimensão 4. Posteriormente, crie uma função que encontre o maior valor desta matriz e outra função que encontre o menor valor. Imprima os valores encontrados na função principal (main).

#include<stdio.h>
#include<conio.h>
int main (void )
{
  int matriz[3][3],i, j, maior,menor, posMenor,posMaior, TAM;
  
  printf ("\nDigite valor para os elementos da matriz\n\n");
  
  for ( i=0; i<3; i++ )
    for ( j=0; j<3; j++ )
    {
      printf ("\nElemento[%d][%d] = ", i, j);
      scanf ("%d", &matriz[ i ][ j ]);
    }
  
 
  for ( i=0; i<3; i++ )
    for ( j=0; j<3; j++ )
    {
      printf ("\nElemento[%d][%d] = %d\n", i, j,matriz[ i ][ j ]);
    }

    maior    = matriz[i];
    posMaior = 0;
    for (i = 1; i < TAM; i++) {
        if (matriz[i] > maior) {
            maior    = matriz[i];
            posMaior = i;
        }
    }
 
   
    menor    = matriz[0];
    posMenor = 0;
    for (i = 1; i < TAM; i++) {
        if (matriz[i] < menor) {
            menor    = matriz[i];
            posMenor = i;
        }
    }
 

    printf("Vetor: ");
    for (i = 0; i < TAM; i++) {
        printf("%i ", matriz[i]);
    }
 
    printf("\nMaior valor: %i - posicao: %i", maior, posMaior+1);
    printf("\nMenor valor: %i - posicao: %i", menor, posMenor+1);
 
   
  getch();
  return(0);
}

 

Postado

@Laryssa Silva É para criar uma matriz de 4x4, mas no seu programa está 3x3.

 

Para pegar o menor e maior número pede para criar uma função, a do maior p.ex pode ser assim,

 

int maior(int matriz[][4]){
    int n = matriz[0][0];
    for(int i = 0; i < 4; i += 1){
        for(int j = 0; j < 4; j += 1){
            if(matriz[i][j] > n){
                n = matriz[i][j];
            }            
        }
    }
    return n;
}

 

  • Curtir 1
  • Solução
Postado

@Laryssa Silva

dei uma adaptada na sua questão, pois tinha coisa desnecessária de acordo ao enunciado que você mandou 

segue o código abaixo :

 

 

#include<stdio.h>
#include<conio.h>
int main(){
  int matriz[4][4],i, j, maior,menor;
  
  printf ("\nDigite valor para os elementos da matriz\n\n");
  
  for ( i=0; i<4; i++ )
    for ( j=0; j<4; j++ ){
      printf ("\nElemento[%d][%d] = ", i, j);
      scanf ("%d", &matriz[i][j]);
    }
  
 maior = matriz[i][j];
    for (i = 0; i < 4; i+=1){
    for(j = 0; j < 4; j+=1){
        if (matriz[i][j] > maior){
           maior = matriz[i][j];
       
        }
    }
}
    menor = matriz[i][j];
    for(i = 0; i < 4; i+=1){
    for(j = 0; j <4; j+=1){
        if (matriz[i][j] < menor) {
            menor = matriz[i][j];
        }
    }
}
    printf("\n-------------------------------------\n");
     printf("\nMaior valor: %i\n", maior);
    printf("\nMenor valor: %i", menor);

        
    return 0;
}

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