100까지 소수 갯수 코딩을 실행해 보면 제대로 결과가 나옵니다.
예를 들어 10까지면 소수4개, 100까지면 소수25개....
예전 문의사항을 보면 검증하기위해 main함수에 있는 number에 100대신 3을 입력했을때 결과가 소수가 왜 1개로 나오냐는 문의사항이 있었습니다.
사실 3까지의 소수의 갯수는 576쪽 디버깅표(정오표 참조)에서도 나왔듯이 2개가 되어야 합니다(2하고 3 두개).
하지만 프로그램에 3을 입력하게 되면 당연히 결과가 1로 나옵니다. main에있는 반복문 조건이 i < number 이니까 3은 수행이 안되죠.
여기서 해깔려하시는 분들이 있는것 같습니다. 그래서 조건을 i <= number 로 변경을 하는게 맞지 않나 생각이 듭니다.
100으로 입력하게 될 경우 만약에 100이 소수라고 가정하게되면 100은 포함이 않되니 결과가 잘못나오게 되잖아요....
사실 이런부분이 잠재적 프로그램 오류라고 볼수 있을것 같습니다. 정보처리기사 필기 이론에 보면 이런부분을 주의하라고 나와 있잖아요???
안녕하세요 길벗수험서 운영팀입니다.
예, 맞는 말씀이십니다.
해당 문제의 경우 문제 또는 코드를 수정하여 좀 더 정확하게 표현할 수 있도록 수정하겠습니다.
학습이 혼동을 드려 사과드립니다.
행복한 하루되세요 :)
-
관리자2019-03-28 10:50:56
안녕하세요 길벗수험서 운영팀입니다.
예, 맞는 말씀이십니다.
해당 문제의 경우 문제 또는 코드를 수정하여 좀 더 정확하게 표현할 수 있도록 수정하겠습니다.
학습이 혼동을 드려 사과드립니다.
행복한 하루되세요 :)