Ir para conteúdo

Arquivado

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

joaom

matriz para vetor

Recommended Posts

Olá!

 

Estou com dificuldade com um algoritmo.

é o seguinte, leio uma matriz de 5x5, preciso pegar cada elemnto da matriz e multiplicar por um valor X, também lido.

Segue abaixo o enunciado e até onde consegui fazer.

Como podem ver estou tentando fazer, só que não consigo mais passar dali.

Ah, outra dúvida que tenho, se não for pedir muito, como faço para gerar uma matriz randomicamente, tentei randomize, random, etc e não consegui.

Espero que alguém possa me ajudar.

Escrever um algoritmo que lê uma matriz M 5x5 e um valor A, inteiro e

multiplica cada elemento de M pelo valor A e coloca estes resultados em um

vetor com 25 elementos. O algoritmo deverá escrever os valores do vetor.

 

Desde ja, agradeço!

 

E até onde consegui fazer:

#include <stdio.h>#include <conio.h>#include <math.h>main(){ 	  int mat[5][5],	  vet[25],	  i,j,a,k;	  printf ("Informe os elementos da matriz: \n");	  for (i=0;i<5;i=i+1)		for (j=0;j<5;j=j+1)			scanf (" %d",&mat[i][j]);	  printf("\nExibicao da matriz:\n");	  printf("-------------------\n");	  for (i=0;i<5;i=i+1)		{	for (j=0;j<5;j=j+1)				printf ("%4d",mat[i][j]);			printf ("\n");		}	   printf("\n\nInforme um valor para ser multiplicado: ");	   scanf("%d",&a);	   // preciso pegar cada elemento da martiz e multiplicar pelo valor	   // lido acima e colocá-los em um vetor com 25 elementos.		getch();}

Compartilhar este post


Link para o post
Compartilhar em outros sites

tendo a matriz e tendo o vetor é simples

 

percorra as linhas i e colunas j da matriz e coloque o resultado na posição (5 vezes i) + j.

 

linha   coluna      posicao do vetor0       0           00       1           10       2           2...0       4           41       0           51       1           6...4       4           24

vamos ao código... declare um inteiro posicao no inicio do código para deixar o código mais limpo.

depois do seu comentário

 

// preciso pegar cada elemento da martiz e multiplicar pelo valor// lido acima e colocá-los em um vetor com 25 elementos.for (i = 0; i < 5; i++) {    for (j = 0; j < 5; j++) {     posicao = (5 * i) + j;     vetor[posicao] = a * matriz[i][j];    }}

meu, é uma multiplicação simples, acho que você nem precisa de math.h (que só dá dor de cabeça na compilação)

 

depois é só imprimir o vetor né?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tendo a matriz e tendo o vetor é simplespercorra as linhas i e colunas j da matriz e coloque o resultado na posição (5 vezes i) + j.

linha   coluna      posicao do vetor0       0           00       1           10       2           2...0       4           41       0           51       1           6...4       4           24
vamos ao código... declare um inteiro posicao no inicio do código para deixar o código mais limpo.depois do seu comentário
// preciso pegar cada elemento da martiz e multiplicar pelo valor// lido acima e colocá-los em um vetor com 25 elementos.for (i = 0; i < 5; i++) {    for (j = 0; j < 5; j++) {     posicao = (5 * i) + j;     vetor[posicao] = a * matriz[i][j];    }}
meu, é uma multiplicação simples, acho que você nem precisa de math.h (que só dá dor de cabeça na compilação)depois é só imprimir o vetor né?
vlw Ricardo, consegui aqui, ja testei e ta funcionando.

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.