책 내용 질문하기
Left Right 질문입니다
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
276
조회수
59
작성일
2017-09-19
작성자
탈퇴*원
첨부파일

276p에서

Left에서 Right갈때는 -1이고

왜 Right에서 Left갈때는 +1이 되는지 궁금합니다.

28op에서 안쪽 반복문이 왜 i-1인지 왜 -1만큼 더해주는지 궁금합니다.

317p에서 1번답이 <= 인지 < 답은 안되는지 궁금합니다.

답변
2017-09-19 09:31:55

안녕하세요.

1)

위쪽 반복문을 보면

i = Left, Right-1, 1로 i는 Left에서 시작하여 Right-1이 될 때까지 1씩 증가합니다. 즉 +1씩 이동하는 것이죠.

아래쪽 반복문을 보면

i = Right, Left+1, -1로 i는 Right에서 시작하여 Left+1이 될 때까지 1씩 감소합니다. 즉 -1씩 이동하는 것이죠.

2)

반복문의 반복 변수가 반복문 이후에 사용되는 경우의 설명이 280쪽 사이드 전문가의 조언에 언급되어 있습니다.

반복문은 증가값을 적용한 후 종료값과 비교하는데, 이로 인해 반복문을 벗어날 때는 증가값이 한 번 더 적용된 상태에서 빠져나가게 됩니다. 예를 들어 k값은 i-1부터 1까지 -1씩 증가하므로 반복문이 종료되는 기준은 k가 1이 될 때이지만 증가값 -1이 종료될 때 한 번 더 적용되어 실제 반복문을 빠져나올 때는 k는 1이 아닌 0이 됩니다. 이 변수를 반복문 이후에 사용하므로 원래 원하는 값이 0으로 만들어주기 위해 A[K+1]을 하는 것이죠. 반복문이 마지막까지 진행된 상태에 대한 예이지만 중간이 끝나는 경우에도 증가값이 먼저 적용된 상태에서 반복문을 진입하므로 같은 맥락입니다.

3)

<=와 <는 차이가 있습니다.

예를 들어 <= 와 같이 같은 경우가 포함되면 같을 때까지 진행되지만 <는 작을 때까지만 진행되므로 < 보다 <= 경우가 한 번 더 수행하게 됩니다.

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

  • *
    2017-09-19 09:31:55

    안녕하세요.

    1)

    위쪽 반복문을 보면

    i = Left, Right-1, 1로 i는 Left에서 시작하여 Right-1이 될 때까지 1씩 증가합니다. 즉 +1씩 이동하는 것이죠.

    아래쪽 반복문을 보면

    i = Right, Left+1, -1로 i는 Right에서 시작하여 Left+1이 될 때까지 1씩 감소합니다. 즉 -1씩 이동하는 것이죠.

    2)

    반복문의 반복 변수가 반복문 이후에 사용되는 경우의 설명이 280쪽 사이드 전문가의 조언에 언급되어 있습니다.

    반복문은 증가값을 적용한 후 종료값과 비교하는데, 이로 인해 반복문을 벗어날 때는 증가값이 한 번 더 적용된 상태에서 빠져나가게 됩니다. 예를 들어 k값은 i-1부터 1까지 -1씩 증가하므로 반복문이 종료되는 기준은 k가 1이 될 때이지만 증가값 -1이 종료될 때 한 번 더 적용되어 실제 반복문을 빠져나올 때는 k는 1이 아닌 0이 됩니다. 이 변수를 반복문 이후에 사용하므로 원래 원하는 값이 0으로 만들어주기 위해 A[K+1]을 하는 것이죠. 반복문이 마지막까지 진행된 상태에 대한 예이지만 중간이 끝나는 경우에도 증가값이 먼저 적용된 상태에서 반복문을 진입하므로 같은 맥락입니다.

    3)

    <=와 <는 차이가 있습니다.

    예를 들어 <= 와 같이 같은 경우가 포함되면 같을 때까지 진행되지만 <는 작을 때까지만 진행되므로 < 보다 <= 경우가 한 번 더 수행하게 됩니다.

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

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