用Python写输入一个数n,判别是否是素数。是,输出True;否,输出False。素数,是只能被1和它本身整除的数。
时间: 2024-09-27 16:06:48 浏览: 39
你可以使用下面的Python代码来判断一个数字n是否为素数:
```python
def is_prime(n):
if n <= 1: # 素数定义排除1和负数
return False
elif n == 2: # 2是最小的素数
return True
elif n % 2 == 0: # 偶数除了2外都不是素数
return False
else:
i = 3
while i * i <= n: # 只需检查到√n即可,因为大于该值的因子会有一个小于等于它的平方根的配对
if n % i == 0:
return False
i += 2 # 验证奇数,避免偶数检查
return True
# 输入测试
num = int(input("请输入一个数字:"))
result = is_prime(num)
if result:
print(f"{num} 是素数 (True)")
else:
print(f"{num} 不是素数 (False)")
相关问题
python输入一个数n,判别是否是素数。是,输出True;否,输出False
在Python中,我们可以创建一个函数来判断一个数n是否为素数。素数是指大于1的自然数,除了1和它本身以外不再有其他因数。下面是一个简单的实现:
```python
def is_prime(n):
if n <= 1: # 素数定义排除1和负数
return False
elif n == 2: # 2是最小的素数
return True
elif n % 2 == 0: # 偶数不是素数,除了2
return False
else:
i = 3 # 验证从3开始到sqrt(n)的所有奇数因子
sqrt_n = int(n**0.5)
while i <= sqrt_n:
if n % i == 0:
return False
i += 2 # 只检查奇数
return True
num = int(input("请输入一个整数:"))
if is_prime(num):
print(True)
else:
print(False)
用python 输入一个数n,判别是否是素数。是,输出True;否,输出False。素数,是只能被1和它本身整除的数。
在Python中,判断一个数n是否为素数,可以通过以下步骤实现:
```python
def is_prime(n):
if n <= 1: # 素数定义排除1和负数
return False
elif n == 2: # 2是最小的素数
return True
elif n % 2 == 0: # 偶数除以2余数为0,除了2以外的偶数不是素数
return False
else: # 验证从3到√n是否有因子
for i in range(3, int(n**0.5) + 1, 2): # 只检查奇数作为因子
if n % i == 0:
return False
return True
# 获取用户输入
num = int(input("请输入一个数:"))
# 判断并输出结果
if is_prime(num):
print(True)
else:
print(False)
```
这个函数会遍历从3到n的平方根的所有奇数,如果找到能整除n的数,则n不是素数;如果没有找到,则n是素数。注意,由于质数的特性,我们不需要检查所有小于等于n的数,只需要检查到其平方根即可。
阅读全文