책 내용 질문하기
소수판별 완벽히 이해가 안되네요.
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
169
조회수
150
작성일
2017-04-03
작성자
첨부파일

기본적으로

소수의 정의가 1과 자기 자신만을 약수로 갖는 수 이고

0과 1은 소수가 아니지 않나요?

169page에 순서도 판별(5번)에 J : i 에 문제 3번과 4번이 있는데

J보다 i가 작으면 무조건 소수인가요??

아무리 생각해도 이해가가지 않아서 자바로 코딩을 해보았습니다.

0과 1을 넣어봤는데 이조차 소수로 판별됩니다.

이와 더불어 5번 설명에 간단히 적어주신거 자세히좀 풀어주셨으면 좋겠습니다.

답변
2017-04-04 09:12:50

안녕하세요.

이 알고리즘은 묵시적으로 소수의 개념을 알고 있다는 전제에서 2 이상의 입력값을 대상으로 진행합니다.

소수는 1보다 큰 값이므로 소수 판별을 위한 입력값으로 A에는 2 이상의 값을 입력한 후 그 값에 대한 소수 판별을 수행해야 합니다.

알고리즘의 이해에서 학습했듯이 이 알고리즘은 소수를 판별할 때 J로 A를 나눕니다. i보다 1작은 수까지

그 과정에서 J로 A를 나눌 때 나머지가 0인 경우는 A가 소수인 경우입니다.

하지만 나머지가 0이 아닌 경우는 J를 1증가시켜 그 다음수로 나눠봅니다. 그 과정을 i보다 작거나 같을 때까지 수행하는 것이죠.

J가 i보다 작거나 같을 때까지도 나눠봤는데 나머지가 0이 아닌 경우, 즉 J가 i보다 커진 경우는 A가 소수인 경우입니다.

이 과정이 ⑤번 J:i 에서 비교되는 내용입니다.

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

  • *
    2017-04-04 09:12:50

    안녕하세요.

    이 알고리즘은 묵시적으로 소수의 개념을 알고 있다는 전제에서 2 이상의 입력값을 대상으로 진행합니다.

    소수는 1보다 큰 값이므로 소수 판별을 위한 입력값으로 A에는 2 이상의 값을 입력한 후 그 값에 대한 소수 판별을 수행해야 합니다.

    알고리즘의 이해에서 학습했듯이 이 알고리즘은 소수를 판별할 때 J로 A를 나눕니다. i보다 1작은 수까지

    그 과정에서 J로 A를 나눌 때 나머지가 0인 경우는 A가 소수인 경우입니다.

    하지만 나머지가 0이 아닌 경우는 J를 1증가시켜 그 다음수로 나눠봅니다. 그 과정을 i보다 작거나 같을 때까지 수행하는 것이죠.

    J가 i보다 작거나 같을 때까지도 나눠봤는데 나머지가 0이 아닌 경우, 즉 J가 i보다 커진 경우는 A가 소수인 경우입니다.

    이 과정이 ⑤번 J:i 에서 비교되는 내용입니다.

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

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