测验4: 程序的控制结构 (第4周)
生活随笔
收集整理的這篇文章主要介紹了
测验4: 程序的控制结构 (第4周)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
測驗4: 程序的控制結構 (第4周)
文章目錄
- 測驗4: 程序的控制結構 (第4周)
- 單選題
- 程序題
這是python123官網上聯合MOOC的Python程序設計(第10期)答案
單選題
像這種看程序出結果的題,把握不準的話可以拿代碼進IDE里跑一下,結果肯定是妥妥的。
程序題
1.四位玫瑰數
解法一,把四位數的個十百千位分別求出來,然后進行4次冪求和,最后判斷,等于自身就進行輸出,這種解法比較基礎和常規。
解法二,把四位數轉換為字符串,對字符串的每一位再進行4次冪求和,省去了分別求個十百千位的時間,這種解法很妙哦。
for i in range(1000,10000):s=str(i)if(pow(int(s[0]),4)+pow(int(s[1]),4)+pow(int(s[2]),4)+pow(int(s[3]),4)==i):print(i)2.100以內素數之和
這個題的本質就是判斷素數,將100以內的素數判斷出來再相加即可。這里我使用了函數,主要是為了讓程序更方便易讀
樸素版素數判斷
def isBool(n):for i in range(2,n):if(n%i==0):return Falsereturn True if __name__ == '__main__':sum=2for i in range(3,100):if(isBool(i)):sum+=iprint(sum)優化版素數判斷
import math def isBool(n):temp=int(math.sqrt(n))for i in range(2,temp+1):if(n%i==0):return Falsereturn True if __name__ == '__main__':sum=2for i in range(3,100):if(isBool(i)):sum+=iprint(sum)總結
以上是生活随笔為你收集整理的测验4: 程序的控制结构 (第4周)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 测验3: 基本数据类型 (第3周)
- 下一篇: 测验5: 函数和代码复用 (第5周)