Если кратко, то вектор — это одномерный массив типа double, матрица — двумерный массив типа double. Векторы бывают вертикальные и горизонтальные, но в MQL5 они не разделяются.
Матрицы можно представить как массив горизонтальных векторов, где первый индекс матрицы означает номер строки, а второй индекс — номер столбца.
//Пример:
matrix matrix_a={{10,3,2},{1,8,12},{6,5,4},{7,11,9}};
Print("matrix_a\n",matrix_a);
vector cols_max=matrix_a.ArgMax(0);
vector rows_max=matrix_a.ArgMax(1);
ulong matrix_max=matrix_a.ArgMax();
Print("cols_max=",cols_max);
Print("rows_max=",rows_max);
Print("max index ",matrix_max," max value ",matrix_a.Flat(matrix_max));
/*
matrix_a
[[10,3,2]
[1,8,12]
[6,5,4]
[7,11,9]]
cols_max=[0,3,1]
rows_max=[0,2,0,1]
max index 5 max value 12.0
*/
그리고 좌표에 3자리와 4자리 숫자가 있어야 하는데 어떻게 3자리와 4자리 숫자를 이해해야 하나요?
또는 MatrixSetValues 문서를 보면 모든 것이 명확하게 설명되어 있습니다.
알겠습니다. 결국 2차원 배열과 같습니다.
솔직히 혼란스럽고 여기 1과 여기 2에 설명이 있고 첫 번째 변형은 기사에 따른 것이지만 두 번째 변형에서는 아무것도 재현되지 않습니다. 아니면 내가 그것을 재현하지 않고 배열을 우회하여 바이너리 파일에서 행렬로 데이터를 읽을 수 있습니까?
두 번째 링크에는 그러한 해결책이 있습니다.
void matrix .FromFile(const int rows, condt int cols, const int file_handle, const int count=-1, const int offset=0)
fromfile
텍스트 또는 바이너리 파일의 데이터로부터 행렬을 생성합니다.
소개에 바로 나와 있습니다.
Если кратко, то вектор — это одномерный массив типа double, матрица — двумерный массив типа double. Векторы бывают вертикальные и горизонтальные, но в MQL5 они не разделяются.
Матрицы можно представить как массив горизонтальных векторов, где первый индекс матрицы означает номер строки, а второй индекс — номер столбца.
선형 대수에서와 달리 행과 열 번호만 배열에서처럼 0부터 시작합니다.
두 번째 링크에는 이 솔루션이 있습니다.
void matrix .FromFile(const int rows, condt int cols, const int file_handle, const int count=-1, const int offset=0)
fromfile
텍스트 또는 바이너리 파일의 데이터로부터 행렬을 생성합니다.
아직 구현되지 않았습니다.
도입부에 다음과 같이 명시되어 있습니다.
어떤 것을 문자 그대로 받아들여야 하고 어떤 것을 추상적으로 받아들여야 하는지 상상하기 어렵습니다....
아직 구현되지 않았습니다.
알았어, 기다리자.... 물론 빈 파일을 읽는 것과 동일한 방식으로 수행하는 것이 바람직하지만, 즉 다른 채우기가있을 것입니다 - 필요한 것이 무엇인지, 그리고 이미 매트릭스가있는 특정 위치에서 지정하는 것이 바람직합니다 ...
행렬은 2차원 배열이 맞죠?
이 배열의 특정 열에서 최대 값을 찾고 싶으니 지침을 살펴 보겠습니다.
그리고 좌표에 3자리와 4자리 숫자가 있어야 하는데 어떻게 3자리와 4자리 숫자를 이해해야 하나요?
그리고 결국 주어진 열의 최대값을 얻으려면 어떻게 해야 하나요?
매트릭스를 지우려면 터미널을 다시 열어야 하는 이유는 무엇인가요?
본질 - 코드 작성 - 매트릭스 채우기 - 매트릭스 결과 인쇄 - 스크립트 실행 - 매트릭스 채우기 주석 달기 - 스크립트 실행 - 이전 값으로 매트릭스 인쇄.
도입부에 다음과 같이 명시되어 있습니다.
그림에서 00, 01, 02에서 번호 매기기를 변경할 수 있습니다.... 로 변경하면 더 명확해질 것입니다.