Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Isaias Tavares

Matriz

Recommended Posts

Olá pessoal, estou tentando fazer o exercício abaixo, mas não estou conseguindo, aparece uma matriz nula no final. Procurei na internet, mas nao achei como multiplicar um valor dado pelo usuário por todos os elementos da matriz.

 

2. Elabore um algoritmo que crie uma matriz 3x6 com valores aleatórios. Ao final o algoritmo deverá:

 

a. Mostrar os valores da matriz;

b. Pedir um valor do usuário;

c. Multiplicar todos os valores pelo valor fornecido pelo usuário;

d. Mostrar novamente os valores da matriz.

 

#include <stdio.h>
int main ()
{
   int i, j, k, l, matriz[3][6], mat[3][6];
   float valor, multiplicacao;
   for (i=0; i<3; i++) {
       for (j=0; j<6; j++) {
           matriz[i][j] = rand() / 1000;
       }
   }
   for (i=0; i<3; i++) {
       for (j=0; j<6; j++) {
           printf("%3d", matriz[i][j]);
       }
       printf("\n\n");
   }
   printf("Informe um valor qualquer: ");
   scanf("%d", &valor);
   for (i=0; i<3; i++) {
       for (k=0; k<3; k++) {
           for (j=0; j<6; j++) {
               for (l=0; l<6; l++) {
                   mat[k][l] = valor*matriz[i][j];
               }
           }
       }
   }
   for (k=0; k<3; k++) {
       for (l=0; l<6; l++) {
           printf("%3d", mat[k][l]);
       }
       printf("\n\n");
   }
   return 0;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já resolvi o problema, é só fazer o seguinte:

 

#include <stdio.h>
int main ()
{
   int i, j, matriz[3][6], k;
   for (i=0; i<3; i++) {
       for (j=0; j<6; j++) {
           matriz[i][j] = rand() / 1000;
       }
   }
   for (i=0; i<3; i++) {
       for (j=0; j<6; j++) {
           printf("%3d", matriz[i][j]);
       }
       printf("\n\n");
   }
   printf("Informe um valor qualquer: ");
   scanf("%d", &k);
   for (i=0; i<3; i++) {
       for (j=0; j<6; j++) {
           matriz[i][j] = k*matriz[i][j];
       }
   }
   for (i=0; i<3; i++) {
       for (j=0; j<6; j++) {
           printf("%3d", matriz[i][j]);
       }
       printf("\n\n");
   }
   return 0;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.