이런건 다중 for 문을 사용하려 문제를 푸시면 됩니다
4행 3열이라는게 나왔으므로
위치값으로 살펴보면
(y값,x값) 으로 표시함
-------
(1,1)(1,2)(1,3)
(2,1)(2,2)(2,3)
(3,1)(3,2)(3,3)
(4,1)(4,2)(4,3)
--------
이렇게 되겠네요
그러면 위 표를 보면
(4,2) => (1,2)
(4,3) => (1,3)
(1,2) => (2,2)
(1,3) => (2,3)
(2,2) => (2,2)
(2,3) => (2,3)
(3,2) => (3,2)
(3,3) => (3,3)
이렇게 해당 xy측에 있는 상수값을 이동해주면 됩니다만, 바로 저렇게 이동시키게 되면
이동이 아니라 경우에 따라 한가지 숫자로 도배가 됩니다
즉, 이동해야 할 자리의 숫자를 보전해줘야 하는거죠
그래서 이를 로직상 다시 정리해보면?
(4,2) => buff2
(4,3) => buff3
(3,2) => (4,2)
(3,3) => (4,3)
(2,2) => (3,2)
(2,3) => (3,3)
(1,2) => (2,2)
(1,3) => (2,3)
buff2=> (1,2)
buff3=> (2,2)
이렇게 옮겨주면 됩니다
# basic 프로그램으로 코딩한다면 아래처럼 됩니다
# 배열은 arr(4,3) 이라고 정의합니다
dim arr(4,3)
... 이 부분에 2차원 배열에 원하는 값 넣어주세요 ...
buff2 = arr(4,2)
buff3 = arr(4,3)
for y = 3 to 1 step -1
arr(y,2) = arr(y+1,2)
arr(y,3) = arr(y+1,3)
next y
arr(1,2) = buff2
arr(1,3) = buff3
이걸 다른 언어로 코딩한다고 해도 로직은 동일하니 해당 명령문을 해당 타언어로 컨버전해서
사용하시면 됩니다