책 내용 질문하기
소인수분해하기
도서
2019 시나공 정보처리기능사 실기
페이지
71
조회수
334
작성일
2019-07-26
작성자
탈퇴*원
첨부파일

어떤 수 X를 SQR로 제곱근을 구하는 값이 20을 하면 4.xxx이고 2부터 4이하까지 나누어 떨어지게 한다는 부분은 어느정도 이해가 되는데

71페이지의 4번 빈칸이 저는 B/D가 답인줄 알았는데 B=MOK이 답이더라고요

 

제가 한 답은 짝수인경우 소수점이 안남고 홀수인경우 소수점이 남는 오류가 있다는걸 디버깅을 하면서 알게되었는데

MOK이란 것은 INT로 소수부분을 절삭했는데 어떻게 답이 나오는 구조인지 이해가 안됩니다.

그리고 2번의 경우 답이 D=B인데 E값이 D보다 작아지면 나눌수 있는 값은 없으니 B자체가 소인수로 되기 때문인가요?

답변
2019-07-26 11:45:47

안녕하세요 길벗수험서 운영팀입니다.

 

음.. 질문을 제가 제대로 이해하고 답변하는지 모르겠네요.

추가로 의문점이 있다면 재질문 주시기 바랍니다.

 

MOK=INT(B/D)

NMG=B-MOK*D

 

위부분은 단순한 과정입니다.

B를 몫과 나머지로 나누기 위한 과정이죠.

13을 5로 나눈다고 한다면,

13/5를 수행하여 2.6을 구한후 0.6을 절삭하여 2를 몫으로 두고,

13-2*5를 수행하여 3을 나머지로 구하는 것이죠.

즉 13은 몫(2)*나눔수(5)+나머지(3)가 되는 것입니다.

나머지가 0이라면 소인수로 분해된 수이니 A[C]에 저장하게 되죠.

 

----------

 

네, 정확히 이해하셨습니다.

정수는 제곱근 까지 나누어봤을 때 나누어 떨어지는 수가 없는 경우 '소수'가 됩니다.

소수는 소인수 분해가 불가능한 수이니 그대로 배열 A에 넣어줘야겠죠.

 

행복한 하루되세요 :)

  • 관리자
    2019-07-26 11:45:47

    안녕하세요 길벗수험서 운영팀입니다.

     

    음.. 질문을 제가 제대로 이해하고 답변하는지 모르겠네요.

    추가로 의문점이 있다면 재질문 주시기 바랍니다.

     

    MOK=INT(B/D)

    NMG=B-MOK*D

     

    위부분은 단순한 과정입니다.

    B를 몫과 나머지로 나누기 위한 과정이죠.

    13을 5로 나눈다고 한다면,

    13/5를 수행하여 2.6을 구한후 0.6을 절삭하여 2를 몫으로 두고,

    13-2*5를 수행하여 3을 나머지로 구하는 것이죠.

    즉 13은 몫(2)*나눔수(5)+나머지(3)가 되는 것입니다.

    나머지가 0이라면 소인수로 분해된 수이니 A[C]에 저장하게 되죠.

     

    ----------

     

    네, 정확히 이해하셨습니다.

    정수는 제곱근 까지 나누어봤을 때 나누어 떨어지는 수가 없는 경우 '소수'가 됩니다.

    소수는 소인수 분해가 불가능한 수이니 그대로 배열 A에 넣어줘야겠죠.

     

    행복한 하루되세요 :)

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