책 내용 질문하기
실기 2회때 나온 최종점검 모의고사 13번 문제 질문 잇습니다
도서
2020 시나공 정보처리기사 실기 [기본서]
페이지
0
조회수
236
작성일
2020-10-15
작성자
탈퇴*원
java로 구현된 프로그램을 분석하여 실행결과를 적는 문제입니다.
함수 arr을 만들어 사용하는 문제이고
최초 배열이 int n[] = {4, 2, 7, 1} 입니다.
문제는 크기를 비교하여 배열의 숫자 위치를 바꾸는 것인데
여기서 첫번째 반복문이 이해가 안가서 질문 드립니다.
두 번째 for문의 결과로
temp = a[0] = 4
a[0] = a[sw] = 2
a[sw] = temp = 4가 되어 반복문의 1회 결과 {2, 4, 1, 7}이 될 것 같은데
답안지에서는 1회에서 {1, 2, 7, 4}로 표기하여, 1회 결과에서 a[0]과 a[3]이 바뀐 것으로 나와있습니다...
답안이 잘 이해가 가지 않는데 추가적인 해답을 얻을 수 있을까요?
답변
2020-10-16 11:31:16
안녕하세요 길벗수험서 운영팀입니다.
회원님의 디버깅 과정 중
두 번째 for문 진행 시
a[j]<a[sw] 가 참일 때 sw = 3 과정이 수행되지 않은 것으로 보입니다.
해당 과정이 수행된 후 두 번째 for문을 벗어나 교환을 수행하게 되면
i = 0, sw=3이 되어
a[3]과 a[0]의 교환이 이루어집니다.
행복한 하루되세요 :)
-
관리자2020-10-16 11:31:16
안녕하세요 길벗수험서 운영팀입니다.
회원님의 디버깅 과정 중
두 번째 for문 진행 시
a[j]<a[sw] 가 참일 때 sw = 3 과정이 수행되지 않은 것으로 보입니다.
해당 과정이 수행된 후 두 번째 for문을 벗어나 교환을 수행하게 되면
i = 0, sw=3이 되어
a[3]과 a[0]의 교환이 이루어집니다.
행복한 하루되세요 :)