Matlab의 좌표계에서 임의의 "경로"를 만들려고합니다. 각 반복에 대해 0의 초기 값을 가진 행렬의 새 값을 채우는 for 루프를 작성하여이를 수행합니다.값을 반복하지 않고 좌표계에서 경로 만들기 (Matlab)
예를 들어, 초기 매트릭스가 a=[0 0 0 0 0; 0 0 0 0 0]
(row1 = x 값, row2 = y 값)이므로 5 포인트가 있습니다.
경로가 오른쪽/왼쪽 또는 위/아래로 이동할 수 있습니다 (대각선 없음). 내 for 루프에서 randi(4)
을 호출하고 "randi(4)
= 1이면 왼쪽 (x-1)으로 1 포인트 이동하고 randi(4)
= 2이면 오른쪽 (x + 1) 등으로 이동하십시오."
문제는 두 번 이상 특정 지점을 방문 할 수 없다는 것입니다. 예를 들어, 경로는 (0,0)에서 시작하여 (0,1), (1,1), (1,0)로 이동 한 다음 다시 (0,0)로 이동할 수 없습니다. . 내 현재 코드에서는이 제한이 없으므로 제안을 얻을 수 있기를 희망합니다.
이 예제에서는 매트릭스가 a=[0 0 1 1 0; 0 1 1 0 0]
과 비슷할 것이므로
나는 행렬 a의 각 열에서 각 새로운 좌표 (여기 (0,0))를 빼고, 두 열 모두에 대해 0의 값을주는 행렬이 있다고 생각했다. 자체), 다음) 이전 단계로 돌아가 다시 randi(4)
실행하자 ..하지만
- 어떻게 "한 단계 뒤로 이동"그것을 말할 수있는 (또는 두 개 또는 세?
- 이미 설정된 매트릭스의 각 열에 대해 한 열을 어떻게 비교합니까?
- 이것은 생각이었습니다 .. Matlab에 어떤 기능이 있나요? 또는 행렬 내에서 두 개의 열이 동일한 지 비교할 수 있습니까?
다른 기능을 사용하여 끝났지 만 입력 해 주셔서 감사합니다. – Luli
무엇을 사용하셨습니까? – JesseBikman