Inicialização da matriz - página 3

 
MetaNt:


Isto me lembra uma matriz...

para a matriz de pedidos, você disse 0=comprar e 1=vender

Então, como eu inicializaria isto?

OrderArray[10,2] = {.......}{...} ?

Acho que é exatamente como as matrizes

Você o inicializa com um conjunto de chaves e tantos valores quantos couberem na matriz ou apenas um valor para toda a matriz e depois adiciona os valores reais mais tarde.

Sim, eu disse que comprar e vender é 0 e 1 porque quando você trabalha com pedidos, os tipos de pedidos são esses valores inteiros.

Na maioria das vezes você encontrará a maneira mais fácil é inicializar todo o array para um único valor (só porque você tem que inicializá-lo) e depois adicionar os valores mais tarde.

orderarray[10,2] = {0};

Quando você usa para loops com arrays, tudo isso fará sentido.

 
SDC:

Acho que é exatamente como as matrizes

Você o inicializa com um conjunto de chaves e tantos valores quantos couberem na matriz ou apenas um valor para toda a matriz e depois adiciona os valores reais mais tarde.

Sim, eu disse que comprar e vender é 0 e 1 porque quando você trabalha com pedidos, os tipos de pedidos são esses valores inteiros.

Na maioria das vezes você encontrará a maneira mais fácil é inicializar todo o array para um único valor (só porque você tem que inicializá-lo) e depois adicionar os valores mais tarde.

orderarray[10,2] = {0};

Quando você usa para loops com arrays, tudo isso fará sentido.


Eu notei algo

Myarray [3][4] é multi-dimensional, mas olhe

Myarray [3][4] = {x,y,z}

É definido usando uma forma unidimensional, o que significa que para uma das dimensões somente um valor é válido mesmo que o tamanho permita 4, de modo que Myarray [2,0]=z mas Myarray[2,1] = 0 e Myarray[0,2] também = z.

 
SDC:

Acho que é exatamente como as matrizes

Você o inicializa com um conjunto de chaves e tantos valores quantos couber na matriz ou apenas um valor para toda a matriz e depois adiciona os valores reais mais tarde.

Sim, eu disse que comprar e vender é 0 e 1 porque quando você trabalha com pedidos, os tipos de pedidos são esses valores inteiros.

Na maioria das vezes você encontrará a maneira mais fácil é inicializar todo o array para um único valor (só porque você tem que inicializá-lo) e depois adicionar os valores mais tarde.

orderarray[10,2] = {0};

Quando você usa para loops com arrays, tudo isso fará sentido.


Eu notei algo

Myarray [3][4] é multi-dimensional, mas olhe

Myarray [3][4] = {x,y,z}

É definido usando uma forma unidimensional, o que significa que para uma das dimensões somente um valor é válido mesmo que o tamanho permita 4, de modo que Myarray [2,0]=z mas Myarray[2,1] = 0 e Myarray[0,2] também = z.

 
SDC:

"Na seqüência inicializada, uma ou várias constantes podem ser omitidas. Neste caso, os elementos da matriz correspondente do tipo numérico são inicializados por zero, os elementos das matrizes do tipo string são inicializados pelo valor da string "" (aspas sem espaço), ou seja, por uma linha vazia (não deve ser confundida com um espaço)".

e depois mostra este exemplo,

string Mas_s[4] = {"a","b", ,"d"};           // String array

provavelmente estava destinado a ser:

string Mas_s[4] = {"a","b","","d"};           // String array

Sim, no primeiro exemplo Mas_s[2] será rubricado com 0

      string A[4] = {"a","b", ,"d"};
      string letters = "Array A =";           
      for(int x = 0;x<4;x++)
      letters +=A[x];
      Print(letters);
      
      string B[4] = {"a","b","" ,"d"};
      letters = "Array B =";           
      for(x = 0;x<4;x++)
      letters +=B[x];
      Print(letters);
      
      string C[4] = {"a","b"," " ,"d"};
      letters = "Array C =";           
      for(x = 0;x<4;x++)
      letters +=C[x];
      Print(letters);

Resultado


13:03:01 aaa CADJPY,H1: Array A =ab0d

13:03:01 aaa CADJPY,H1: Array B =abd

13:03:01 aaaa CADJPY,H1: Array C =ab d

 
MetaNt:


Eu notei algo

Myarray [3][4] é multi-dimensional, mas olha

Myarray [3][4] = {x,y,z}

É definido usando uma forma unidimensional, o que significa que para uma das dimensões somente um valor é válido mesmo que o tamanho permita 4, de modo que Myarray [2,0]=z mas Myarray[2,1] = 0 e Myarray[0,2] também = z.

Sim, se você preencher a matriz dessa forma, ela a preencherá seqüencialmente, começando pela primeira dimensão
 
SDC:
Sim, se você preencher a matriz dessa forma ela a preencherá seqüencialmente começando pela primeira dimensão.


assim int myarray[2][2] = {1,2} preencheria

myarray[0,0]=1

myarray[1,0]=2

myarray[0,0]=1

myarray[0,1]=2

como você conseguiria fazer isso usando um loop

Você usaria as variáveis i e j com limites de acordo com o tamanho da matriz?

 

portanto, deve preenchê-lo nesta seqüência

[0,0]

[0,1]

[0,2]

[0,3]

então

[1,0]

[1,1]

[1,2]

[1,3]

então

[2,0]

[2,1]

[2,2]

[2,3]

 
MetaNt:


assim int myarray[2][2] = {1,2} preencheria

myarray[0,0]=1

myarray[1,0]=2

myarray[0,0]=1

myarray[0,1]=2

como você conseguiria fazer isso usando um loop

Você usaria as variáveis i e j com limites de acordo com o tamanho da matriz?

sim, você pode substituir as constantes dimensionais por uma variável

for(int i=0; i<2, i+++)

{myarray[i,0] = ? // acrescentaria valores ao 1o.

}

 

você também poderia fazê-lo de outra forma

for(i=0; i<2; i++)

{myarray[0,i] = ?

}

 
SDC:

você também poderia fazê-lo de outra forma

for(i=0; i<2; i++)

{myarray[0,i] = ?

}


Obrigado por esclarecer isso, parece muito com matrizes.