책 내용 질문하기
2018 정보처리기사 실기 21번 섹션에서 질문이 있습니다
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
195
조회수
98
작성일
2018-06-16
작성자
탈퇴*원
첨부파일

소인수 분해 하는 과정에서 b가 바뀔때마다 d도 2로 초기화되어야 할 것 같은데 플로차트나 c언어 코드에서나 모두 d=2가 반복문 밖에 있네요. 이유좀 알려주시겠어요? 이것에 대한 답변으로 d를 초기화하는것이 반복문 밖에 있나 안에 있나 결과는 같다라는 것이 있었는데 이해가 잘 안가서요.

답변
2018-06-18 09:31:05

안녕하세요.

D를 2로 초기에 B 값을 나눴을 때 나머지가 0인 경우는 짝수인 경우인데,

2로 나눠진 짝수는 이후 홀수의 몫을 갖게 됩니다.

그러므로 이 값을 다시 2부터 나눠도 나머지는 0이 아니므로 무조건 D는 +1이 되게 됩니다.

이러한 과정이 진행되므로 B를 2로 초기화하는 과정을 처음에 한 번만 수행해도 결과가 동일합니다.

하지만 알고리즘의 이해에서 언급한 소인수 분해 과정에 맞게 순서도를 연계하려면

D를 2로 초기화하는 과정이 반복문 안쪽으로 들어가는 것이 맞습니다.

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

  • *
    2018-06-18 09:31:05

    안녕하세요.

    D를 2로 초기에 B 값을 나눴을 때 나머지가 0인 경우는 짝수인 경우인데,

    2로 나눠진 짝수는 이후 홀수의 몫을 갖게 됩니다.

    그러므로 이 값을 다시 2부터 나눠도 나머지는 0이 아니므로 무조건 D는 +1이 되게 됩니다.

    이러한 과정이 진행되므로 B를 2로 초기화하는 과정을 처음에 한 번만 수행해도 결과가 동일합니다.

    하지만 알고리즘의 이해에서 언급한 소인수 분해 과정에 맞게 순서도를 연계하려면

    D를 2로 초기화하는 과정이 반복문 안쪽으로 들어가는 것이 맞습니다.

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

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