我觉得我已经按照题意写了但是仍然不对😿
输入is_prime(100)时还是True
判断输入整数是否为质数
def is_prime(num):
if num==1 or num==2:
return True
for i in range(2,num):
if num%i==0:
return False
return True
print(is_prime(7))
print(is_prime(100))
print(is_prime(2))
print(is_prime(1))
print(is_prime(20))
print(is_prime(23))
print(is_prime(29))
print(is_prime(30))
因为100 进入到if判断里面直接return了,后面for没有执行
把for循环语句和if换个位置
你这是个整数输进去都是True。。。
def is_prime(num):
if num == 1:
return False
if num == 2:
return True
for i in range(2, int(num**0.5 + 1), 2):
if num % i == 0:
return False
return True