책 내용 질문하기
정보처리기사 실기 17년도 10월 문제 8번 정답이 잘못된것 같습니다.
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
81
조회수
113
작성일
2018-03-26
작성자
탈퇴*원

안녕하세요.

정보처리기사 실기 문제를 풀면서 문제 혹은 정답이 잘못된것 같아 문의 드립니다.

해당 순서도(Flow Chart)를 참조하여 코딩하고 결과를 확인하였습니다.

기존 책에서는 정답을

1. H

2. Q[L][Y]

3. P[L][Y]

제가 생각한 답

1. H

2. Q[H][6-Y]

3. P[H][6-Y]

확인 부탁드리겠습니다.

첨부파일로 제가 작성한 소스코드와 사진 파일 올립니다.

소스코드

-----------------------

#include

int main(void) {

int X,Y,H,L;
int P[5][5] , Q[5][5];

H = 0;
L = 0;

// array setting.
for (X = 1 ; X <= 5 ; X++)
{
for (Y = 1 ; Y <= 5 ; Y++)
{
H+=2;
P[X][Y] = H;
}
}

// change 90 degree. 2times.
for (X = 2 ; X >= 1 ; X-)
{
for (Y = 1 ; Y <= 5 ; Y++)
{
for (H = 1 ; H <= 5 ; H++)
{
L = 6 - H;

if (X == 2)
{
Q[Y][H] = P[H][6-Y];
}
else
{
P[Y][H] = Q[H][6-Y];
}
}
}
}

// Print array value

for (int i= 1 ; i<= 5 ; i++)
{
for (int j = 1 ; j<= 5 ; j++)
{
printf("%d " , P[i][j]);
}
printf("\n");
}


return 0;
}

답변
2018-03-26 13:18:02

안녕하세요.

C언어로 코딩할 경우 배열의 위치가 0부터 시작이므로 이를 감안하고 코딩을 해야 합니다.

이를 감아하고 질문주신 코드를 수행해 보니 아래 그림과 같이

오른쪽으로 90도씩 회전하는 것이 아니라 왼쪽으로 90도씩 회전하는 형태로 구현이 되고 있습니다.

오늘도 즐거운 하루 되세요.

  • *
    2018-03-26 13:18:02

    안녕하세요.

    C언어로 코딩할 경우 배열의 위치가 0부터 시작이므로 이를 감안하고 코딩을 해야 합니다.

    이를 감아하고 질문주신 코드를 수행해 보니 아래 그림과 같이

    오른쪽으로 90도씩 회전하는 것이 아니라 왼쪽으로 90도씩 회전하는 형태로 구현이 되고 있습니다.

    오늘도 즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.