设计一个函数prime,参数为一个整数x,函数的功能是判断x是否为素数,如果是返回True,否则返回False。在主程序中,给出一组数,调用prime判断是否为素数,并输出每个数的判定结果
时间: 2024-02-09 20:13:33 浏览: 94
可以按照以下方式实现函数`prime`:
```python
def prime(x):
if x < 2:
return False
for i in range(2, int(x ** 0.5) + 1):
if x % i == 0:
return False
return True
```
函数`prime`的主要思路是:如果x小于2,则x不是素数;否则从2到x的平方根进行遍历,如果存在某个数可以整除x,则x不是素数,否则x是素数。需要注意的是,在判断x是否为素数时,只需要遍历到x的平方根即可,这是因为如果x可以分解为两个大于其平方根的数的乘积,那么这两个数中至少有一个小于其平方根,否则它们的乘积会大于x。
接下来,在主程序中可以如下调用函数`prime`:
```python
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in nums:
if prime(num):
print(num, "是素数")
else:
print(num, "不是素数")
```
输出结果如下:
```
1 不是素数
2 是素数
3 是素数
4 不是素数
5 是素数
6 不是素数
7 是素数
8 不是素数
9 不是素数
10 不是素数
```
对于给定的每个数,调用函数`prime`进行判断,并输出结果。
相关问题
素数判断(v1) 设计一个函数prime,参数为一个整数x,函数的功能是判断x是否为素数,如果是返回True,否则返回False。在主程序中,给出一组数,调用prime判断是否为素数,并输出每个数的判定结果
好的,下面是实现素数判断的代码(使用了试除法):
```python
def prime(x):
if x < 2:
return False
for i in range(2, int(x ** 0.5) + 1):
if x % i == 0:
return False
return True
# 测试
nums = [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
for num in nums:
if prime(num):
print(num, "是素数")
else:
print(num, "不是素数")
```
在上面的代码中,我们首先判断x是否小于2,因为2是最小的质数。然后从2开始到x的平方根(向下取整)之间的所有数进行试除,如果x能被其中的一个数整除,那么就不是素数,否则就是素数。最后在主程序中,我们给出了一组数,调用prime函数进行判断,并输出结果。
希望这个代码能够解决你的问题。
矩阵判断。编写程序判断4阶矩阵是否对称,并统计矩阵中素数的个数。 要求:①定义 isSymmetrical ( x )函数,函数功能为判断4阶矩阵 x 是否对称。如果是则返回 True :否则返回 False 。 ②定义 prime ( x )函数,函数功能为判断整数 x 是否为素数。 ③_ main _函数中定义或输入4阶矩阵,调用 isSymmetrical ( x )函数和 prime ( x )函数对参数 x 进行判断,输出相应的提示结果。
以下是Python代码实现:
```python
# 判断整数是否为素数
def prime(x):
if x < 2:
return False
for i in range(2, int(x ** 0.5) + 1):
if x % i == 0:
return False
return True
# 判断4阶矩阵是否对称
def isSymmetrical(x):
for i in range(4):
for j in range(4):
if x[i][j] != x[j][i]:
return False
return True
# 主函数
def main():
# 定义或输入4阶矩阵
matrix = [[1, 2, 3, 4], [2, 5, 6, 7], [3, 6, 8, 9], [4, 7, 9, 10]]
# 统计矩阵中素数的个数
prime_count = 0
for i in range(4):
for j in range(4):
if prime(matrix[i][j]):
prime_count += 1
# 判断矩阵是否对称
if isSymmetrical(matrix):
print("矩阵对称")
else:
print("矩阵不对称")
# 输出素数个数
print("矩阵中素数的个数为:", prime_count)
if __name__ == '__main__':
main()
```
其中,我们定义了两个函数 `prime` 和 `isSymmetrical`,分别用于判断整数是否为素数和判断4阶矩阵是否对称。在主函数中,我们输入或定义一个4阶矩阵,并调用以上两个函数判断该矩阵是否对称及矩阵中素数的个数,并输出相应的提示结果。
阅读全文