책 내용 질문하기
362p c언어 해설
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
362
조회수
58
작성일
2017-04-04
작성자
첨부파일

c언어 코드9번에서 b[j][4-i]라고 나와있는데 알고리즘에서 6-i지만 c언어 배열이0부터 시작해서 5-i라고 나와야하는거 아닌지 궁금합니다 또 3번과 4번을 비교해볼때 i=4부터 시작하면 j도 i-1에서 시작해야하는건아닌지...어떨때에 -1을하는지 정확하게 구분할수는없나요?

그리고 357p에서 c언어 해설에 7번은 알고리즘상 col+1이 col이되고 j가 j+1이 되는지 상세히 설명해주시면 감사하겠습니다

답변
2017-04-05 09:28:27

안녕하세요.

배열의 위치가 0부터 시작하며, 배열의 요소는 0~4 또는 4~0으로 변경됩니다.

A B

i, j → j, 4-i

0,0 → 0,4

0,1 → 1,4

0,2 → 2,4

0,3 → 3,4

0,4 → 4,4

가 됩니다.

B 배열의 열이 5-i일 경우

0,5

1,5 와 같이 열이 4를 벗어나게 됩니다.

위 내용을 359쪽 알고리즘의 이해에 제시된 이동 규칙에 적용해 보면서 이해해 보세요.

357쪽 행렬의 변화를 직접 확인해 보면

배열의 위치가 0부터 시작합니다.

J는 0 ~ 3으로 변경됩니다.

행의 시작(L)은 3, 2, 1, 0으로 변경되어야 하므로

3 = col - (J+1) = 4-0+1 = 3

2 = col - (J+1) = 4-1+1 = 2

1 = col - (J+1) = 4-2+1 = 1

0 = col - (J+1) = 4-3+1 = 0

J는 0 ~ 3으로 변경됩니다.

행의 끝(E)은 3, 4, 5, 6으로 변경되어야 하므로

3 = (j-1)+col = -1+4 = 3

4 = (j-1)+col = 0+4 = 4

5 = (j-1)+col = 1+4 =5

6 = (j-1)+col = 2+4 = 6

으로 변경됩니다.

A[i][J]이고 행인 i는 L부터 e까지 변경되므로

J가 0일때, 즉 열이 0열(첫 번째 열)일 때 행은 3~3까지

J가 1일때, 즉 열이 1열(두 번째 열)일 때 행은 2~4까지

J가 2일때, 즉 열이 2열(세 번째 열)일 때 행은 1~5까지

J가 3일때, 즉 열이 3열(네 번째 열)일 때 행은 0~6까지

출력됩니다.

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

  • *
    2017-04-05 09:28:27

    안녕하세요.

    배열의 위치가 0부터 시작하며, 배열의 요소는 0~4 또는 4~0으로 변경됩니다.

    A B

    i, j → j, 4-i

    0,0 → 0,4

    0,1 → 1,4

    0,2 → 2,4

    0,3 → 3,4

    0,4 → 4,4

    가 됩니다.

    B 배열의 열이 5-i일 경우

    0,5

    1,5 와 같이 열이 4를 벗어나게 됩니다.

    위 내용을 359쪽 알고리즘의 이해에 제시된 이동 규칙에 적용해 보면서 이해해 보세요.

    357쪽 행렬의 변화를 직접 확인해 보면

    배열의 위치가 0부터 시작합니다.

    J는 0 ~ 3으로 변경됩니다.

    행의 시작(L)은 3, 2, 1, 0으로 변경되어야 하므로

    3 = col - (J+1) = 4-0+1 = 3

    2 = col - (J+1) = 4-1+1 = 2

    1 = col - (J+1) = 4-2+1 = 1

    0 = col - (J+1) = 4-3+1 = 0

    J는 0 ~ 3으로 변경됩니다.

    행의 끝(E)은 3, 4, 5, 6으로 변경되어야 하므로

    3 = (j-1)+col = -1+4 = 3

    4 = (j-1)+col = 0+4 = 4

    5 = (j-1)+col = 1+4 =5

    6 = (j-1)+col = 2+4 = 6

    으로 변경됩니다.

    A[i][J]이고 행인 i는 L부터 e까지 변경되므로

    J가 0일때, 즉 열이 0열(첫 번째 열)일 때 행은 3~3까지

    J가 1일때, 즉 열이 1열(두 번째 열)일 때 행은 2~4까지

    J가 2일때, 즉 열이 2열(세 번째 열)일 때 행은 1~5까지

    J가 3일때, 즉 열이 3열(네 번째 열)일 때 행은 0~6까지

    출력됩니다.

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

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