编写一个Python程序,判断质合数
时间: 2023-02-22 22:30:34 浏览: 33
下面是判断质数的一个简单Python程序:
```
def is_prime(n):
if n <= 1:
return False
for i in range(2, n):
if n % i == 0:
return False
return True
num = int(input("请输入一个数字:"))
if is_prime(num):
print(num, "是质数")
else:
print(num, "不是质数")
```
该程序首先定义了一个函数`is_prime`,用于判断一个数是否是质数。它接收一个整数参数`n`,如果`n`小于等于1,则直接返回False;否则,遍历从2到`n-1`的所有整数,如果发现`n`能被某个数整除,则返回False;最后,如果所有数都不能被`n`整除,则返回True。
然后,该程序读入一个整数,并使用`is_prime`函数判断它是否是质数,最后输出结果。
相关问题
利用python编写程序,用户输入一个合数,将其分解为质因式输出,如:60=2*2*3*5,每个因子都是质数,质数判断过程在一个自定义函数内完成。
可以使用以下代码实现:
```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
def prime_factorization(num):
"""将一个合数分解为质因数"""
factors = []
for i in range(2, num + 1):
if num % i == 0 and is_prime(i):
factors.append(i)
num //= i
if num == 1:
break
return factors
num = int(input("请输入一个合数:"))
factors = prime_factorization(num)
print("{}=".format(num), end="")
for i in range(len(factors)):
if i == len(factors) - 1:
print(factors[i])
else:
print("{}*".format(factors[i]), end="")
```
运行程序,输入一个合数,程序会输出其质因数分解结果。例如,输入60,输出为:
```
请输入一个合数:60
60=2*2*3*5
```
用python写一个分类质数和合数的程序
当然可以,以下是一个用Python编写的分类质数和合数的程序:
```
num = int(input("请输入一个正整数:"))
if num > 1:
for i in range(2, num):
if (num % i) == 0:
print(num, "是合数")
break
else:
print(num, "是质数")
else:
print(num, "既不是质数也不是合数")
```
该程序首先要求用户输入一个正整数,然后进行判断。如果输入的数大于1,则使用一个循环从2开始逐一判断这个数是否能被2到这个数-1之间的任何一个数整除。如果能被整除,则输出“是合数”;否则,输出“是质数”。如果输入的数小于等于1,则输出“既不是质数也不是合数”。
阅读全文