一道简单的python编程题?
哥德巴赫猜想问题。每个大于2的偶数均可表示为两个素数之和。先编写函数IsPrime(v),判断一个整数v(v≥2)是否为素数,是则返回逻辑值True,否则返回逻辑值Fal...
哥德巴赫猜想问题。每个大于2的偶数均可表示为两个素数之和。
先编写函数IsPrime(v),判断一个整数v(v≥2)是否为素数,是则返回逻辑值True,否则返回逻辑值False。
然后编写程序,让用户输入一个正偶数为参数,输出两个素数,并且这两个素数之和等于原来的正偶数。如果存在多组符合条件的素数,则全部输出。如果输入不是大于2的偶数,则输出“输入数据出错!”。
只有一组输入,输入及输出格式见样例输入及输出。
样例输入及输出1:
输入一个正偶数:8
8=3+5
<程序结束>
样例输入及输出2:
输入一个正偶数:9
输入数据出错!
<程序结束>
样例输入及输出3:
输入一个正偶数:20
20=3+17
20=7+13
<程序结束> 展开
先编写函数IsPrime(v),判断一个整数v(v≥2)是否为素数,是则返回逻辑值True,否则返回逻辑值False。
然后编写程序,让用户输入一个正偶数为参数,输出两个素数,并且这两个素数之和等于原来的正偶数。如果存在多组符合条件的素数,则全部输出。如果输入不是大于2的偶数,则输出“输入数据出错!”。
只有一组输入,输入及输出格式见样例输入及输出。
样例输入及输出1:
输入一个正偶数:8
8=3+5
<程序结束>
样例输入及输出2:
输入一个正偶数:9
输入数据出错!
<程序结束>
样例输入及输出3:
输入一个正偶数:20
20=3+17
20=7+13
<程序结束> 展开
2个回答
展开全部
按照题目要求编写的哥德巴赫猜想的Python程序如下
def IsPrime(v):
if v>=2:
for i in range(2,v//2+1):
if v%i==0:
return False
else:
return True
else:
return False
n=int(input("输入一个正偶数:"))
if n>2 and n%2==0:
for i in range(1,n//2+1):
if IsPrime(i)==True and IsPrime(n-i)==True:
print("%d=%d+%d" %(n,i,n-i))
else:
print("输入数据出错!")
源代码(注意源代码的缩进)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询