编写函数,判断一个数字是否为素数,是则返回字符串YES,否则返回字符串NO。
时间: 2023-06-09 20:02:51 浏览: 92
好的,以下是该函数的 Python 实现代码:
```python
def is_prime_number(num):
if num < 2:
return "NO"
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return "NO"
return "YES"
```
这个函数的思路就是对于一个大于等于2的数字,从2开始逐个除以每个小于它本身的正整数,如果有除数则说明它不是素数,结束循环并返回 "NO",否则说明它是素数,返回 "YES"。需要注意的是,对于较大的数字,为了提高效率,我们只需要测试它一半以下的正整数即可,这是因为如果x为一个合数,那么它的最小质因子肯定不会超过x的平方根。
相关问题
python编写函数判断一个数字是否为素数,是则返回字符串yes,否则返回字符串no,再编
写一个程序,输入一个正整数n,输出1~n中所有的素数。
以下是python实现:
```python
# 判断一个数是否为素数
def is_prime(num):
if num <= 1:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
# 判断n以内的所有素数
def prime_numbers(n):
primes = []
for i in range(2, n + 1):
if is_prime(i):
primes.append(i)
return primes
# 判断单个数
num = int(input("请输入一个正整数: "))
if is_prime(num):
print("yes")
else:
print("no")
# 判断1~n中的素数
n = int(input("请输入一个正整数: "))
primes = prime_numbers(n)
print("1~{}中的素数为:".format(n), primes)
```
注意,这里使用了两个函数,一个用于判断单个数是否为素数,另一个用于求1~n中所有的素数。
编写一个函数判断一个数是否为素数是则返回字符串YES,否则返回字符串NO
下面是使用 Python 语言编写的判断是否为素数的函数:
```python
def is_prime(number):
if number < 2:
return "NO"
for i in range(2, int(number ** 0.5) + 1):
if number % i == 0:
return "NO"
return "YES"
```
函数中首先判断输入的数字是否小于 2,如果小于 2 则直接返回字符串 NO。然后使用 for 循环从 2 开始遍历到输入数字的平方根加 1 的范围,判断输入数字是否能够被循环变量整除,如果能够整除则返回字符串 NO。最后如果循环结束后都没有找到能够整除输入数字的因子,则返回字符串 YES,表示输入数字是素数。
阅读全文