ds_grid_get_max 함수 설명
ds_grid_get_max
함수는 정의된 그리드 영역 내의 모든 셀에서 최대 값을 찾는 데 사용됩니다. 아래 이미지를 참조하세요.
문법
ds_grid_get_max(index, x1, y1, x2, y2);
인수 설명
인수 | 유형 | 설명 |
---|---|---|
index | 핸들 | 그리드의 핸들입니다. |
x1 | 정수 | 영역의 왼쪽 셀 열입니다. |
y1 | 정수 | 영역의 위쪽 셀 행입니다. |
x2 | 정수 | 영역의 오른쪽 셀 열입니다. |
y2 | 정수 | 영역의 아래쪽 셀 행입니다. |
반환 값
- 실수 또는 문자열
예제
val = ds_grid_get_max(grid, 0, 0, 5, 5);
위 코드는 변수 "val"을 grid
변수에 인덱스된 DS 그리드의 주어진 영역 내에서 최대 값으로 설정합니다.
활용 및 응용 예제
- 최대 값 찾기
gml grid = ds_grid_create(10, 10); ds_grid_set(grid, 0, 0, 5); ds_grid_set(grid, 1, 1, 10); ds_grid_set(grid, 2, 2, 3); max_value = ds_grid_get_max(grid, 0, 0, 2, 2);
- 다양한 영역에서 최대 값 찾기
gml max_value1 = ds_grid_get_max(grid, 0, 0, 4, 4); max_value2 = ds_grid_get_max(grid, 5, 5, 9, 9);
- 조건부 최대 값 찾기
gml for (var i = 0; i < ds_grid_width(grid); i++) { for (var j = 0; j < ds_grid_height(grid); j++) { if (ds_grid_get(grid, i, j) > 0) { // 특정 조건을 만족하는 셀에서 최대 값 찾기 } } }
- 최대 값의 위치 찾기
gml var max_val = -1; var max_x = -1; var max_y = -1; for (var i = 0; i < ds_grid_width(grid); i++) { for (var j = 0; j < ds_grid_height(grid); j++) { var current_val = ds_grid_get(grid, i, j); if (current_val > max_val) { max_val = current_val; max_x = i; max_y = j; } } }
- 최대 값 출력
gml show_message("최대 값은: " + string(max_value));
이와 같은 예제들을 통해 ds_grid_get_max
함수를 다양한 방식으로 활용할 수 있습니다.