MOOC作業練習8

2021-09-18 04:58:52 字數 1387 閱讀 8471

驗證哥德**猜想之一:2000 以內的正偶數(大於等於 4)都能夠分解為兩個質數之 和。每個偶數表達成形如:4=2+2 的形式。

ast =

[i for i in

range(4

,2001,2

)]# 把所有大於4的偶數做成列表

bst =

for i in

range(2

,2000):

# 找出2000內所有的素數

k =int(i**

0.5)

flag =

1for j in

range(2

,k+1):

if i % j ==0:

flag =

0break

if flag:

count =

0for i in ast:

# 如果偶數-質數的差在質數的列表裡,則count + 1,並終止當前迴圈計算下乙個偶數

for j in bst:

if(i - j)

in bst:

count+=

1break

iflen

(ast)

== count:

# 如果數目是相等的,則命題正確

print

('命題正確'

)

我誤解題意了,題意是給乙個正偶數 ,找出和是這個數的兩個質數。

import math

defprime

(x):

if x==1:

return

false

n =int(math.sqrt(x)

)for i in

range(2

,n+1):

if x % i ==0:

return

false

return

true

defgc

(n):

k =3while k < n:

t = n - k

if t < k:

break

if prime(k)

and prime(t)

:return k,t

k +=

2

n =int

(input()

)if n >4:

a,b = gc(n)

print

("{}={}+{}"

.format

(n,a,b)

)elif n ==4:

print

("{}={}+{}"

.format(4

,2,2

))

MOOC作業練習6

驗證命題 如果乙個三位整數是 37 的倍數,則這個整數迴圈左移後得到的另兩個 3 位 數也是 37 的倍數。注意驗證命題的結果輸出方式,只要輸出命題為真還是假即可,而 非每乙個三位數都有乙個真假的輸出 先把37的倍數都求出來,再檢查 a i for i in range 100 1000 if i ...

MOOC作業練習10

請完成以下檔案綜合程式設計迷你專案。1 建立乙個檔案blowing in the wind.txt,其內容是 how many roads must a man walk down before they call him a man how many seas must a white dove ...

MOOC作業練習12

一 序列函式 students jack bob rose wolf for i,j in enumerate students 列舉列表 print i,j 0 jack 1 bob 2 rose 3 wolf list reversed students 反轉並生成新列表 wolf rose b...