기고글 토론 "MQL5에서 행렬 및 벡터 연산" - 페이지 3

 
Rashid Umarov #:
또는 MatrixSetValues 문서를 보면 모든 것이 명확하게 설명되어 있습니다.

알겠습니다. 결국 2차원 배열과 같습니다.

 
Rashid Umarov #:

솔직히 혼란스럽고 여기 1과 여기 2에 설명이 있고 첫 번째 변형은 기사에 따른 것이지만 두 번째 변형에서는 아무것도 재현되지 않습니다. 아니면 내가 그것을 재현하지 않고 배열을 우회하여 바이너리 파일에서 행렬로 데이터를 읽을 수 있습니까?

두 번째 링크에는 그러한 해결책이 있습니다.

void matrix .FromFile(const int rows, condt int cols, const int file_handle, const int count=-1, const int offset=0)

fromfile

텍스트 또는 바이너리 파일의 데이터로부터 행렬을 생성합니다.

Документация по MQL5: Методы матриц и векторов
Документация по MQL5: Методы матриц и векторов
  • www.mql5.com
Методы матриц и векторов - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

소개에 바로 나와 있습니다.

Если кратко, то вектор — это одномерный массив типа double, матрица — двумерный массив типа double. Векторы бывают вертикальные и горизонтальные, но в MQL5 они не разделяются.

Матрицы можно представить как массив горизонтальных векторов, где первый индекс матрицы означает номер строки, а второй индекс — номер столбца.


선형 대수에서와 달리 행과 열 번호만 배열에서처럼 0부터 시작합니다.

 
Aleksey Vyazmikin #:

두 번째 링크에는 이 솔루션이 있습니다.

void matrix .FromFile(const int rows, condt int cols, const int file_handle, const int count=-1, const int offset=0)

fromfile

텍스트 또는 바이너리 파일의 데이터로부터 행렬을 생성합니다.

아직 구현되지 않았습니다.

 
Rashid Umarov #:

도입부에 다음과 같이 명시되어 있습니다.

어떤 것을 문자 그대로 받아들여야 하고 어떤 것을 추상적으로 받아들여야 하는지 상상하기 어렵습니다....

 
Rashid Umarov #:

아직 구현되지 않았습니다.

알았어, 기다리자.... 물론 빈 파일을 읽는 것과 동일한 방식으로 수행하는 것이 바람직하지만, 즉 다른 채우기가있을 것입니다 - 필요한 것이 무엇인지, 그리고 이미 매트릭스가있는 특정 위치에서 지정하는 것이 바람직합니다 ...

 

행렬은 2차원 배열이 맞죠?

이 배열의 특정 열에서 최대 값을 찾고 싶으니 지침을 살펴 보겠습니다.

//Пример:

   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자리 숫자를 이해해야 하나요?

그리고 결국 주어진 열의 최대값을 얻으려면 어떻게 해야 하나요?

 
행렬의 특정 컬럼/행렬을 벡터나 배열로 복사하는 방법은 무엇인가요?
 

매트릭스를 지우려면 터미널을 다시 열어야 하는 이유는 무엇인가요?

본질 - 코드 작성 - 매트릭스 채우기 - 매트릭스 결과 인쇄 - 스크립트 실행 - 매트릭스 채우기 주석 달기 - 스크립트 실행 - 이전 값으로 매트릭스 인쇄.

 
Rashid Umarov #:

도입부에 다음과 같이 명시되어 있습니다.

그림에서 00, 01, 02에서 번호 매기기를 변경할 수 있습니다.... 로 변경하면 더 명확해질 것입니다.