<div>열혈강의책 도전프로그래밍 3 도전1번 풀고있습니다..</div> <div> </div> <div>-문제</div> <div> </div> <div>길이가 4x4인 2차원 배열을 선언하고, 모든 요소를 아래 그림의 왼쪽에 있는 형태와 동일하게 초기화 하자</div> <div>그리고 배열의 요소들을 오른쪽 방향으로 90도씩 이동시켜서 그 결과를 출력하는 ㅍ로그램을 작성해 보자.</div> <div>참고로 배열이 변경되는 형태는 다음과 같다.</div> <div> </div> <div>1 2 3 4 13 9 5 1 16 15 14 13 4 8 12 16</div> <div>5 6 7 8 -> 14 10 6 2 -> 12 11 10 9 -> 3 7 11 15</div> <div>9 10 11 12 15 11 7 3 8 7 6 5 2 6 10 14</div> <div>13 14 15 16 16 12 8 4 4 3 2 1 1 5 9 13</div> <div> </div> <div> </div> <div>이런 문제인데요 </div> <div> </div> <div>제가 만든 소스는 이렇습니다</div> <div>보기 쉽게 중요하다고 생각 되는 문장에 //★를 넣을게요 </div> <div> </div> <div> </div> <div> </div> <div>#include <stdio.h></div> <div>int main(void)<br>{<br> int arr2d[4][4]={ //배열 저장<br> {1,2,3,4},<br> {5,6,7,8},<br> {9,10,11,12},<br> {13,14,15,16}<br> };<br> <br> int i,j;<br> int temp;<br> int r=0;<br> </div> <div> /* 배열의 출력 */<br> for(i=0;i<4;i++)<br> {<br> for(j=0;j<4;j++)<br> {<br> printf("%4d ",arr2d[i][j]); // ★<br> }<br> printf("\n");<br> }<br> printf("\n");</div> <div> /* 배열의 회전1 */<br> </div> <div> for(i=0;i<4;i++)<br> {<br> for(j=0;j<4;j++)<br> { <br> temp=arr2d[3-j][i]; // ★ <br> printf("%4d ", temp);<br> <br> }<br> printf("\n");<br> }<br> printf("\n");</div> <div> /* 배열의 회전2 */<br> for(i=0;i<4;i++)<br> {<br> for(j=0;j<4;j++)<br> {<br> temp=arr2d[3-i][3-j]; // ★<br> printf("%4d ", temp);<br> }<br> printf("\n");<br> }<br> printf("\n");</div> <div> /* 배열의 회전3 */<br> for(i=0;i<4;i++)<br> {<br> for(j=0;j<4;j++)<br> {<br> temp=arr2d[j][3-i]; // ★<br> printf("%4d ", temp);<br> }<br> printf("\n");<br> }<br> return 0;<br>}</div> <div> </div> <div> </div> <div>이런 식으로 저는 이 문제를 풀 때 배열자체를 그려 놓고 각 요소를 1) 앞과뒤를 바꾸고 2) 가로가3..가로가2..가로가1..가로가0.. 등등으로 계산해서 풀었습니다</div> <div> </div> <div>근데 저런식으로 다 만들어 놓고 나니 </div> <div> </div> <div>실행결과는 문제와 동일한데</div> <div> </div> <div>과연 내가 푼 방식을 의도한건지</div> <div> </div> <div>아니면 배열A를 딱 하나만 만들어놓고 </div> <div>그 배열A 만 가지고 90도 돌리고 </div> <div>90도돌린 배열A를 가지고 또 90도 돌리고</div> <div>합180도 돌린 배열A를 가지고 또 90 돌리는 식으로 풀라는건지 </div> <div> </div> <div>잘 모르겠네요 ㅠㅠ</div> <div> </div> <div> </div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.