책 내용 질문하기
490쪽
도서
2019 시나공 정보처리기사 실기(산업기사포함)
페이지
409
조회수
336
작성일
2019-04-09
작성자
탈퇴*원
첨부파일
409쪽 c언어중에
위에 n= 7이라고 명시되어있습니다.
조금 내려가면
if ()
s=j
f=n-j 라고 되어있는데
j를 0이라고 생각하면 s=0 (c언어니까 0~6까지)
f=n-j = 7-0 = 7 (좌표값을 벗어나는데 이거 맞는건가요?)
이해가 안되네요? 아래쪽 s=n-j+1 이거는 계산해보면 맞는데
위에쪽 f=n-j-1 이 맞는것 아닌가요?
그리고 아래쪽 else도이상합니다.
j는 6이라고 생각하였을시
s=n-(j+1) = 7-(6+1) = 0 죄표 맞음
f = j+1 =7 ???? 이거 뭔가요 제가 뭔가를 잘못 알고 있는건가요?
답변
2019-04-10 10:44:49
안녕하세요 길벗수험서 운영팀입니다.
네 정확하게 계산하셨습니다.
다만 끝값을 의미하는 f가 직접 배열에 적용될 때 어떻게 사용되는지 확인해 보세요.
654쪽 11번(해설) for(q=s; q<=f-1; q++)
예, f-1로 적용됩니다. f는 계산하신 대로 최대 7을 갖게 되므로 -1을 적용하면 배열 범위 내로 한정되어 값이 입력되게 됩니다.
행복한 하루되세요 :)
-
관리자2019-04-10 10:44:49
안녕하세요 길벗수험서 운영팀입니다.
네 정확하게 계산하셨습니다.
다만 끝값을 의미하는 f가 직접 배열에 적용될 때 어떻게 사용되는지 확인해 보세요.
654쪽 11번(해설) for(q=s; q<=f-1; q++)
예, f-1로 적용됩니다. f는 계산하신 대로 최대 7을 갖게 되므로 -1을 적용하면 배열 범위 내로 한정되어 값이 입력되게 됩니다.
행복한 하루되세요 :)