首頁 > 易卦

程式設計案例—Python模組化程式設計

作者:由 郎哥程式設計課堂 發表于 易卦日期:2022-12-25

線索樹每個結點都有前驅指標嗎

01

程式設計要求

阿萌要開發一個面積計算器程式,用於幫助學生理解平面幾何圖形的邊長與面積的關係。程式可以計算長方形、正方形、平行四邊形、三角形的面積。

程式設計案例—Python模組化程式設計

阿萌這次編寫的程式有點複雜,程式要計算四個幾何圖形的面積,而且計算每個幾何圖形面積的輸入也不盡相同。阿萌該如何編寫這個程式呢?

程式設計案例—Python模組化程式設計

02

問題分解

平時我們在解決一些複雜問題時,會把一個複雜的問題分解成多個子問題,先逐個解決這些子問題,當這些子問題解決後,複雜的問題自然就得到了解決。

例如:假如你要在家做一頓豐盛的晚餐,你可能會安排人去採購食材、安排另外的人備菜,你負責掌勺。我們如果把做一頓豐盛的晚餐作為一個複雜問題,那麼採購食材、備菜、掌勺就是這個複雜問題的子問題,當採購食材、備菜、掌勺這些問題得到解決後,做一頓豐盛的晚餐這個大問題自然就得到了解決。

程式設計案例—Python模組化程式設計

把複雜的問題分解成多個子問題就是分而治之的思想,分而治之的思想同樣也可以使用到程式設計過程中。對於複雜的程式,可以對程式的功能進行分解,將程式的功能分解成多個子功能,從而達到將複雜問題進行簡化的目的。

03

劃分模組

面積計算器可以分解為計算長方形的面積、計算正方形的面積、計算平行四邊形的面積、計算三角形的面積四個子功能,每個子功能是一個獨立的模組檔案。

程式設計案例—Python模組化程式設計

模組檔案就是我們建立的程式碼檔案。前面我們說過,一個Python程式由一個模組或多個模組組成,每個模組就是一個程式碼檔案。在這些模組中,只有一個是主模組,該主模組將被python直譯器直接執行模組中的程式碼,其它模組為功能模組,功能模組只有被主模組的程式碼呼叫後才會執行。

按照功能劃分,面積計算器程式共有五個模組檔案,主模組檔案main。py,計算長方形面積的模組檔案rectangle。py,計算正方形面積的模組檔案square。py,計算平行四邊形面積的模組檔案paraller。py,計算三角形面積的模組檔案triangle。py,還有主模組檔案main。py。

程式設計案例—Python模組化程式設計

模組劃分完成後,就可以開始編寫每個模組程式碼了。

04

計算長方形的面積

長方形的面積公式為:S = a * b

S表示長方形的面積,a表示長方形的長,b表示長方形的寬。程式的輸入是長方形的長和寬,程式的輸出是長方形的面積。

程式設計案例—Python模組化程式設計

計算長方形的面積用函式來實現,方便主模組的呼叫,阿萌繪製了計算長方形面積的流程圖。

程式設計案例—Python模組化程式設計

在流程圖中,當學生輸入的a和b不是整數或小數時,需要提示使用者重新輸入長方形的長和寬,用程式碼實現時,可以使用while迴圈來實現。

rectangle。py程式碼如下:

程式設計案例—Python模組化程式設計