Ajuda em como criar e ler uma matriz tridimensional no arduino

Ola amigos, estou com duvidas em criar uma matriz 3d no arduino.

queria saber como crio essa matriz  e como posso ler a mesma.

pesquisei na net mas nao consegui encontrar nada a respeito.

 

Obrigado.

Exibições: 773

Responder esta

Respostas a este tópico

Explique melhor, esta muito vago..

eu estou precisando criar uma programa onde dentro de cada programa eu tenho 20 variaveis que seriam os passos do programa e dentro de cada passo eu tenho mais 9 variaveis que seriam 9 funcoes que ele vai executar, so que preciso criar no minimo 5 programas.

esses passos seria um contador de pulsos a cada incremento ele muda o passo e executa uma funcao determinada pelos 9 comandos.

deu para entender??

Se entendi vc precisa algo como m[x,y,z].

Um jeito infalivel seria vc fazer "na unha˜.

Por ex, se sua matriz tiver 5x6x7 vc imagina 3 indices:

x,y,z, que seriam: Bloco, linha e posicao dentro da linha.

Para o exemplo: 5 blocos de 6 linhas e 7 caracteres.

Pra escolher o bloco vc teria que dar um salto do tamanho de um bloco, ou seja: x*6*7.

Para escolher a linha dentro do bloco teria que somar a isso o indice da linha multiplicado pelo tamanho da linha: y*6

E dentro dessa linha, vc seleciona o caractere somando o numero do caractere desejado: z

Assim, para meu exemplo, o indice ficaria assim:

matriz[x*6*7+y*6+z]=tal.

Nao sei se fui claro, mas quero dizer que matrizes multidimensionais para o computador nada mais sao que indices multiplicados, nada que nao possa ser feito "manualmente".

Nao sei o C do arduino, quem sabe alguem tem uma dica mais polida.

Obrigad pela ajuda.. seria isso mesmo que preciso, mas queria saber como faço isso no "c" do arduino e como ele le.

eu achei um falando de uma matriz 2d ele usa o comando multiarray, mas encontrei outro aki no blog usando simplesmente int matriz [4] [4]= {0,0,0,0,}, {0,0,0,0}

e ainda no meu caso e 3D a matriz!!!

 

e pq vc nao faz:

int matriz[x][y][z];

for(int l=0; l<x; l++) {

  for(int c=0; c<y; c++) { 

    for(int p=0; p<z; p++) {

     matriz[l][c][p] = valor;

    }

  }

}

sendo x a quantidade de linhas, y para colunas e z para a profundidade.

tentei fazer assim:

int matriz[3] [3] [3];

  for (int x=0; x<2; x++)
  {
       for (int y=0; y<2; y++)
    {
           for (int z=0; z<2; z++);
      {
        matriz[x] [y] [z]= 1+x;

 

 

mas da erro :

sketch_aug01b:30: error: name lookup of 'z' changed for new ISO 'for' scoping
sketch_aug01b:28: error: using obsolete binding at 'z'

 

ja tentei mudar para tudo quanto e letra e nao vai!!!

aguem sabe como faz???

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço