책 내용 질문하기
정보처리기능사 실기 218페지 모를 부분 있습니다.
도서
[2015] 정보처리기능사 실기
페이지
조회수
259
작성일
2016-01-15
작성자
첨부파일
안녕하세요? 218페지 6회 모의고사 부분 이틀전부터 풀어보려 했는데 이 문제는 도저히 감히 안오네요. 엊저녁에 너무도 이해가 안가서 답안 보니 답항 하나도 맞추지 못했습니다.강사님께서 좀 상게히 설명해주셨으면 합니다.부탁드립니다. 오늘도 좋은 하루 되세요.
답변
2016-01-15 09:56:53

안녕하세요.

알고리즘이 이해가 되지 않을 경우 가장 효율적인 방법은

우선 빈 괄호를 모두 채운 상태에서 차분히 디버깅을 수행해 본 후 결과를 확인해 보는 것입니다.

이렇게 과정을 몇 번 수행하다 보면 전체적은 흐름을 파악할 수 있고 이로 인해 어떤 문제를 해결하는 지를 파악할 수 있습니다.

이 알고리즘은 1234를 입력하면 1,234를 출력하는 알고리즘입니다.

즉 뒤에서부터 4번째 자리마다 쉼표(,)를 추가하는 알고리즘입니다.

또 하나 중요한 것은 A 배열은 0부터 시작하므로 A(0)에는 0, A(1)에는 1, A(2)에는 2, .... A(9)에는 9가 저장되어 있다는 것입니다.

M에 1234가 입력되었다고 가정하면

i가 0부터 시작하므로

(i+1) % 4는 나머지가 2입니다. 0이 아니라 ⑨번 이후를 처리하여

K는 4

S(i) = A(K), 즉 S(0) = A(4), 즉 S(0) = 4가 저장되고

M=M/10에 의해 M은 123이 되며

i는 1 증가하여 2가 됩니다.

이 과정을 M이 0이 될때까지 진행하다가 i가 3일 때는 는 (i+1) % 4가 0이 되므로

S(3)에는 ","가 저장됩니다.

결국 S(0)에는 4, S(1)에는 3, S(2)에는 2, S(3)에는 ",", S(4)에는 1이 저장된 후

거꾸로 출력이 되어

1,234가 출력되게 됩니다.

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

  • *
    2016-01-15 09:56:53

    안녕하세요.

    알고리즘이 이해가 되지 않을 경우 가장 효율적인 방법은

    우선 빈 괄호를 모두 채운 상태에서 차분히 디버깅을 수행해 본 후 결과를 확인해 보는 것입니다.

    이렇게 과정을 몇 번 수행하다 보면 전체적은 흐름을 파악할 수 있고 이로 인해 어떤 문제를 해결하는 지를 파악할 수 있습니다.

    이 알고리즘은 1234를 입력하면 1,234를 출력하는 알고리즘입니다.

    즉 뒤에서부터 4번째 자리마다 쉼표(,)를 추가하는 알고리즘입니다.

    또 하나 중요한 것은 A 배열은 0부터 시작하므로 A(0)에는 0, A(1)에는 1, A(2)에는 2, .... A(9)에는 9가 저장되어 있다는 것입니다.

    M에 1234가 입력되었다고 가정하면

    i가 0부터 시작하므로

    (i+1) % 4는 나머지가 2입니다. 0이 아니라 ⑨번 이후를 처리하여

    K는 4

    S(i) = A(K), 즉 S(0) = A(4), 즉 S(0) = 4가 저장되고

    M=M/10에 의해 M은 123이 되며

    i는 1 증가하여 2가 됩니다.

    이 과정을 M이 0이 될때까지 진행하다가 i가 3일 때는 는 (i+1) % 4가 0이 되므로

    S(3)에는 ","가 저장됩니다.

    결국 S(0)에는 4, S(1)에는 3, S(2)에는 2, S(3)에는 ",", S(4)에는 1이 저장된 후

    거꾸로 출력이 되어

    1,234가 출력되게 됩니다.

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

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