def isPrime(x):
'''
소수인지 판별하는 함수
'''
if x==1:
return False
for i in range(2,x//2+1):
if x%i==0:
return False
else:
return True
위 for문에서 범위가 2부터 x를 2로나눈 몫까지 반복되는데,
예시로 들어주신 16의 경우, i가 2,3,4,5,6,7,8까지 반복문이 돌게 됩니다.
그런데 마지막 8의 경우는 2로 나눴을 때 이미 2*8=16으로 한번 나눠지게 되니
for문에 포함이 안되어도 될 것 같은데 아닌가요?
range의 범위가 range(2,x//2)로 수정되어야 할 것 같은데, 맞는건지 궁금합니다.