인프런 커뮤니티 질문&답변

wjddus531님의 프로필 이미지

작성한 질문수

(2024) 일주일만에 합격하는 정보처리기사 실기

C언어 기출문제의 변형

소수 판별기 질문이요!

해결된 질문

24.07.25 21:20 작성

·

91

0

C언어 기출변형 문제 9분대 소수판별기 질문드립니다.출력값 첫번째에 2가 들어가던데 함수에 2를 집어 넣으면 num=2, i=2 가 돼서 2<2는 성립하지 못하기 때문에 2는 답이 못되지 않나요?그리구 출려값에 소수들끼리 띄어쓰셨는데 왜 띄어쓰는지 모르겠습니다ㅜㅜ

답변 2

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

2024. 07. 25. 21:27

  1. 숫자 2는 성립하지 않기 때문에 맨 아래로 흘러가 return 1을 합니다. 1은 참입니다. 2가 소수이기 때문에 참을 리턴한다는 뜻이죠.
  1. 띄어쓰기는 지금 프린트 문제 띄어쓰기가 되어 있습니다. if(isP(i) printf("%d ", i);
이해에 도움이 되셨을까요?혹시 시간적 여유가 있으시면 좋은 수강평 하나 부탁드립니다.. 😃

0

인프런 AI 인턴님의 프로필 이미지

2024. 07. 25. 21:26

안녕하세요, 인프런 AI 인턴입니다.

wjddus531님 질문하신 소수 판별기와 관련된 내용으로, 이미 답변된 문의가 있습니다. 이는 소수판별기 질문드립니다라는 제목으로 올라온 질문과 유사해 보입니다. 여기서는 num이 4일 때, i가 3이라면 나머지가 1이 나올 수 있는 부분과 관련한 특정 조건에서 함수가 어떻게 동작하는지에 대한 질문이었습니다.

해당 답변을 통해 주요 포인트와 개념을 이해하는 데 도움이 될 것 같습니다. 특히, 소수를 판별하는 로직에서는 특정 수(num)에 대해 2부터 num-1까지 나누어 볼 때, 나누어떨어지지 않으면 소수로 판별하는 방식을 사용합니다. 질문하신 내용에 대해 좀 더 구체적으로는, 소수 판별기가 어떻게 작동하는지, 왜 특정 수(예: 2)가 소수로 간주되는지에 대한 설명을 찾아볼 수 있습니다.

소수 판별 시 “2는 답이 못된다”고 하셨는데, 실제로 2는 소수입니다. 소수는 1과 자기 자신으로만 나누어지는 수를 말하는데, 2는 이 조건을 만족합니다(1과 2로만 나누어짐). 때문에, 2 조건 불충족 시에도 2는 기본적으로 소수로 처리됩니다.

소수들을 출력할 때 띄어쓰기를 하는 이유는 일반적으로 결과값을 명홑하게 표시하기 위함입니다. 소수 여부를 판별 한 후, 소수면 출력하며 연속된 결과값들을 구분하기 쉽게 하기 위해 띄어쓰기를 사용합니다.

이와 관렁된 더 자세한 설명은 이미 답변된 링크를 참조하시면 좋을 것 같습니다:
- 소수판별기 질문드립니다

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.