阿摩線上測驗 登入

申論題資訊

試卷:111年 - 111 地方政府特種考試_三等_資訊處理:程式設計#112592
科目:程式設計
年份:111年
排序:0

題組內容

二、有關Python程式設計,回答下列問題:

申論題內容

(一)以下程式執行時,輸入正數為15和21時,其輸出結果分別為何?(14分)
639a92900b224.jpg

詳解 (共 1 筆)

詳解 提供者:hchungw
當輸入為15時,程式的輸出結果為 2 3 5 7 11 13,而當輸入為21時,輸出結果為 2 3 5 7 11 13 17 19
這個 Python 程式定義了一個函數 func_2_1,它接受一個正數 x 並打印出小於 x 的所有質數。質數是只能被1和自身整除的數字,並且質數大於1。
函數 func_2_1 使用了一個 while 循環,從2開始到 x 之前的所有數字,檢查每個數 y 是否為質數。這是通過一個內部的 for 循環實現的,該循環從2遍歷到 y,並檢查 y 是否有除了1和自己之外的其他除數。
如果 y 可以被任何小於它的數整除,變數 flag 被設置為 False,這意味著 y 不是質數,內部循環就會 break 結束,不再檢查更多的數字。如果內部循環結束且 flag 仍然為 True,這意味著沒有找到除1和 y 本身以外的除數,因此 y 是一個質數,並且被打印出來。
當你輸入15時,它會打印出小於15的所有質數,即:2, 3, 5, 7, 11, 13。
當你輸入21時,它會打印出小於21的所有質數,即:2, 3, 5, 7, 11, 13, 17, 19。
每個質數都是獨立檢查的,並在被驗證為質數後立即打印出來,這就是為什么你會看到這些特定的輸出結果。