Ir ao conteúdo

Posts recomendados

Postado

galera gostaria de saber se o jeito que eu resolvia a questão esta certo.

questão ---> Faça um programa para criar uma matriz com 3 linhas e 3 colunas onde serão armazenados números reais. Essa matriz deverá ser preenchida coluna por coluna com valores informados pelo usuário do programa. Em seguida, multiplique cada elemento da diagonal secundária pelo elemento de maior valor armazenado na matriz. Ao final, exiba a matriz resultante, linha por linha.(minha duvida é na impressão,se o que eu fiz esta certo).

 

#include <stdio.h>
#include <stdlib.h>
#define DIM 3


int main(){
    int m[DIM][DIM],i,j,maior;

    printf("digite a primeira coluna \n");
    for(j=0;j<DIM;j++){
        scanf("%d",&m[j][0]);
        }
        printf("\n\n");
    printf("----coluna 1----\n");    
    for(j=0;j<DIM;j++){
        printf("%d\n",m[j][0]);
    }
    printf("-------------------\n\n");
    printf("digite a segunda coluna \n");
    for(j=0;j<DIM;j++){
        scanf("%d",&m[j][1]);
        
        }
        printf("\n\n");
    printf("----coluna 2----\n");    
    for(j=0;j<DIM;j++){
        printf("%d\n",m[j][1]);
    
    }    printf("-------------------\n\n");
        printf("digite a terceira coluna \n");
    for(j=0;j<DIM;j++){
        scanf("%d",&m[j][2]);
        }
        printf("\n\n");
    printf("----coluna 3----\n");    
    for(j=0;j<DIM;j++){
        printf("%d\n",m[j][2]);
    
    
}    printf("-------------------\n\n");

    

for(i=0;i<DIM;i++){
         for(j=0;j<DIM;j++){
         printf("%d\t",m[j]);
         if(j==2)
      printf("\n");}}
      
          for(i=0;i<DIM;i++){
       for(j=0;j<DIM;j++){
       if(maior < m[j]){
       maior=m[j]; }
  }
  }
  printf("\nO maior elemento da matriz é %d\n", maior);    
  printf("\n");
  
  printf("%d    %d    %d\n", m[0][0],m[1][0],m[2][0]*maior);
  printf("%d    %d    %d\n", m[0][1],m[1][1]*maior,m[2][1]);
  printf("%d    %d    %d\n", m[0][2]*maior,m[1][2],m[2][2]);    

    }

Postado

@Eduardo Diniz Como disse no final que a sua dúvida é na impressão, vou por aqui apenas a forma que eu costumo usar quando preciso imprimir uma matriz. No meu caso, acho mais fácil de imprimir e compreender:

 

for(int i=;i<3;i++)
{
    for(int j=;j<3;j++)
    {
    	printf("%d ",matriz[i][j]);
    }
    printf("\n");
}

Acredito que a inserção dos elementos da matriz também ficaria melhor para você entender usando ciclos dentro de outros ciclos. Existe um bom canal no youtube sobre programação ("De aluno para aluno"). O vídeo do link a seguir falará sore essa questão de ciclos dentro de ciclos:

 

 

Abraço,

 

Matheus Féo

Visitante
Este tópico está impedido de receber 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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!