소수의 개념을 알겠지만 원리를 모릅니다.. 그냥 외워야 할까요?
소수란 약수가 1과 자기 자신뿐인 자연수 여기서 약수란 말이 나오기 때문에 약수가 뭔지 알아야 겠죠. 쉽게 말해서 나누어 떨어지는 수라고 생각하면 됩니다.즉 다시 풀어서 설명하면 나누어떨어지는 수가 1과 자기자신 뿐인 자연수가령 10을 보겠습니다.10은 나누어떨어지는 수(약수)가1과 10(자기자신) 뿐인가요?아니죠, 10은 2로도 나누어떨어지고, 5로도 나누어떨어집니다. 1, 2, 5, 10 이 10의 약수가 되겠네요나누어 떨어진다는 말은 다시말해 나머지가 없다는 말과 같습니다.즉 문제의 정의를 다시 생각해보면가령 10의 소수의 개수를 찾아? 소수를 찾아라? 라고 한다면1과 10 이외의 숫자로 나누어 떨어지는 것(약수)이 있는 지 확인해보면 되겠죠? 또한 왜 n/2 까지만 반복문을 돌리냐?그 원리는 간단합니다. 10의 약수는 1, 2 , 5, 10 18의 약수는 1, 2, 3, 6, 9, 18 보시면 알겠지만 전부 짝을 이룹니다. 1 * 10 = 10, 2*5 = 10, 1 * 18 = 18, 2*9 = 18, 3*6 =1810의 중앙 10/2 = 5 를 기점으로 그전에 있는 수로 나누어 떨어지는 지 떨어지지 않는 지만 체크해도 충분하기 때문입니다.그렇기 때문에 문제에서는 i