책 내용 질문하기
문제가 이해가 안가요
도서
2016 시나공 정보처리기능사 실기
페이지
조회수
190
작성일
2016-07-11
작성자
첨부파일

기출문제집에서 23쪽에 N이33일때 k를 2로 해서 나누면 1이남는데 왜 그냥 2로나누고 바로 또 N이 33이되는지 이해가안가요 그리고 왜 N이 33일때 2로 나누고 나머지가 1인건 상관안쓰고 바로 그다음수로넘어갔으면서 왜 N이 11일땐 바로 3으로나누는지 그다음 N이1 일땐 왜 나머지가 0이나올때까지 계속 나누는지 모르겠어요

답변
2016-07-11 09:45:08

안녕하세요.

이 알고리즘은 20쪽에서 설명한 내용처럼

X를 2부터 차례대로 X까지 1씩 증가시키면서 나머지가 0이 되는 값, 즉 소수인 값들을 모아 출력하는 소인수분해 과정입니다.

N이 33일 때 K가 2가 되어 N을 K로 나눕니다.

나머지가 1이므로 K를 증가시켜 K가 3인 상태에서 N을 K로 나눕니다.

나머지가 0이므로 3이 소인수가 됩니다.

소인수 처리를 하고

N=N/K에 의해 N는 11이 됩니다.

N이 1이 아니므로 다시 처리를 수행하여

K=2에 의해

MOD(N, K), 즉 N을 K로 나눕니다. 11을 2로 나누면 나머지가 1이므로 K를 증가시켜 K가 3인 상태에서 나눕니다.

역시 나머지가 0이 아니므로 K를 계속 증가시키면서 N을 K로 나눕니다. 나머지가 0이 될 때까지

결국 K가 11이 될 때 나머지가 0이므로

11이 소인수가 됩니다.

위와 같은 과정으로 처리를 수행합니다.

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

  • *
    2016-07-11 09:45:08

    안녕하세요.

    이 알고리즘은 20쪽에서 설명한 내용처럼

    X를 2부터 차례대로 X까지 1씩 증가시키면서 나머지가 0이 되는 값, 즉 소수인 값들을 모아 출력하는 소인수분해 과정입니다.

    N이 33일 때 K가 2가 되어 N을 K로 나눕니다.

    나머지가 1이므로 K를 증가시켜 K가 3인 상태에서 N을 K로 나눕니다.

    나머지가 0이므로 3이 소인수가 됩니다.

    소인수 처리를 하고

    N=N/K에 의해 N는 11이 됩니다.

    N이 1이 아니므로 다시 처리를 수행하여

    K=2에 의해

    MOD(N, K), 즉 N을 K로 나눕니다. 11을 2로 나누면 나머지가 1이므로 K를 증가시켜 K가 3인 상태에서 나눕니다.

    역시 나머지가 0이 아니므로 K를 계속 증가시키면서 N을 K로 나눕니다. 나머지가 0이 될 때까지

    결국 K가 11이 될 때 나머지가 0이므로

    11이 소인수가 됩니다.

    위와 같은 과정으로 처리를 수행합니다.

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

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