• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

funky_vibes

[C] Dúvida: Matriz -> Matriz (Resolvido)

15 mensagens neste tópico

Olá boa noite!

:-[ sou um pouco nabo em C .

estou a elaborar um programa mas estou com umas duvidas, ja tenho a maior parte do programa feito.

mas estou com alguns problemas.

tenho a Matrix A com 10 valores inicializados

Matrix B com 10 valores , iniciados a 0

Quero mostrar os valores da matriz a e b

e depois passar os valores da matriz a para a b , e mostrar no ecrã.

espero que me ajudem! obrigado  :hmm:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

mas tipo , no topic nao xplica com passar os dados de uma matrix para outra matrix.

tem apenas operaçoes, entre matrizes  :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Fazes algo assim

De 1 até 10

array1[k] = array2[k] ;

sendo que o k vai ser o de 1 até 10.

Depois fazes a mesma coisa para mostrar no ecran, de 1 até 10 imprimir array1

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Fazes algo assim

De 1 até 10

array1[k] = array2[k] ;

sendo que o k vai ser o de 1 até 10.

Depois fazes a mesma coisa para mostrar no ecran, de 1 até 10 imprimir array1

Neste caso de 0 a 9 porque as matrizes começam com o valor de indice 0. :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

mmm :thumbsup: alguem pode exemplificar com um pouco de codigo , nao consigo perceber como passar os dados da matrix 1 para a 2! obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Fazes uma coisa do género:

for(x=0; x=9; x++) {
array2[x] = array1[x];
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Fazes uma coisa do género:

for(x=0; x=9; x++) {
array2[x] = array1[x];
}

Falta um < aí. E isso é com arrays. :thumbsup:

int x, y;

for(x=0; x<=9; x++) {
   for(y=0; y<=9; y++) {
   MatrizB[x][y] = MatrizA[x][y];

   printf("%d",MatrizB[x][y]);
   }
}

Acho que isto se assemelha mais ao que pedes. :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Falta um < aí. E isso é com arrays. :thumbsup:

Aqui fica corrigido:

for(x=0; x<=9; x++) {
array2[x] = array1[x];
}

Uma matriz não é uma array? :dontgetit:

Sinceramente não sei bem os nomes em português...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Falta um < aí. E isso é com arrays. :P

Aqui fica corrigido:

for(x=0; x<=9; x++) {
array2[x] = array1[x];
}

Uma matriz não é uma array? :dontgetit:

Sinceramente não sei bem os nomes em português...

Matriz é como o Hipnoted fez, array é um vector como fizeste.

O correcto é usar um array para definir a matriz, porque a memória funciona de modo unidimensional.

Para uma matriz [9] [9] é aconselhável trabalhar com um array [9 x 9].

Cumpr. bk@ero  :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É o que dá aprender tudo por fontes inglesas, depois não sei os nomes em português, então uma matriz é uma array multi-dimensional, certo?

Obrigado! :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

obrigadão pessoal , em grande :thumbsup: compreendi um pouco melhor a construção , e como passar os dados de uma para outra.

outro genero de duvida , quero passar por exemplo:  apenas os elementos com valor maior que 8 da matriz 1 para a matriz 2

exemplo : M1={1,4,5,6,9,14,17}

M2 era ={0,0,...}

  fica

    M2={9,14,17}

obrigado :P   

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Simples, adicionas um contador inicializado a 0, depois percorres M1 com um for e para cada valor, se for maior que 8 guardas em M2 na posição do contador e incrementas o contador:

j=0;
for(i=0;i<7;i++){
if(M1[i] > 8){
M2[j++] = M1[i];
}
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora