gpt4 book ai didi

Python-素数加法为偶数

转载 作者:太空宇宙 更新时间:2023-11-03 19:31:45 26 4
gpt4 key购买 nike

这是我的教授给我的作业。我不知道从哪里开始或做什么!重点是使用循环来解决这个问题,我可以做循环,但这让我大吃一惊。

偶数和素数。

素数是以 1 和它本身作为唯一约数的数。 2、3、5、7、11 是前几个。注意“是素数”纯粹是一个乘法条件——它与加法无关。所以可能是令人惊讶的是,如果我们开始列出偶数,它们似乎是两个素数的和(加!)。4 = 2 + 2、6 = 3 + 3、8 = 5 + 3、10 = 3 + 7、12 = 7 + 5、14 = 7 + 7、16 = 13 + 3、...

情况总是如此吗?每个偶数都可以写成两个素数之和吗?

  1. 编写 is_prime(n) 函数。它应该接受正整数 n>1 作为输入,并输出 True 或 False,具体取决于 n 是否存在一个素数。使用一个循环来执行此操作,检查对于任何整数 d,1 < d < sqrt(n),d 是否能整除 n。我建议使用 while 循环——仔细考虑循环的条件,以及何时要更改这是循环内的条件。 (根据您的条件使用 bool 值)。
  2. 编写 prime_sum(n) 函数。它应该接受偶数 n>1 作为输入,并通过循环搜索素数 p & q,其中 p + q = n。提示:从 p = 3 开始。如果 (p) 和 (n-p) 是素数,则完成。如果不是,请设置 p+=2 并重试。确保您不会永远搜索!
  3. 主要。
    • 向用户询问偶数 n。不断询问他们,直到他们给你一个正偶数。
    • 搜索被加数 p 和 q,然后将它们打印出来(如果存在)或说不存在。
    • 询问用户是否愿意尝试另一个事件,并让他们继续,直到他们退出。
<小时/>

我不知道我可以编辑这个! :) 这就是我到目前为止所拥有的。我还没有测试它来调试它,因为我想把它全部搞清楚,当错误出现时我会解决它们,但如果你看到任何直接的问题,请告诉我。

def is_prime(n):
d=2
while n>1 and d<n**0.5:
if n%2==0:
c=False
d+=1
return c

def prime_sum(n):
p=3
while n>1:
q=n-p
if q<=0:
p+=2
q=n-p
is_prime(q)
else:
is_prime(q)
is_prime(p)
while True:
print("The prime summands of", n, "are", p, "and", q)
while False:
print("There are no prime summands of", n)

def main():
n=eval(input("Gimme an even number please: "))
while True:
n=eval(input("That is not a positive even number. Try again: "))
#not sure how to combine yet, but I am still finishing.
#will edit again when I have it all down.

最佳答案

不要担心任务的总体情况会很困难。只要按照教授的分解一步一步来就可以了。

关于Python-素数加法为偶数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5466977/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com