第二章 舉例

2021-10-18 23:54:35 字數 1525 閱讀 5697

1.三角形

簡單版本:三角形問題接受三個整數a、b、c作為輸入,用做三角形的邊。程式的輸出是由這三條邊確定的三角形型別:等邊三角形、等腰三角形、不等邊三角形或非三角形。

改進版本:三角形問題接受三個整數a、b、c作為輸入,用做三角形的三條邊。整數a、b、c必須滿足以下條件:

c1: 1≤a≤200

c2: 1≤b≤200

c3: 1≤c≤200

c4: a﹤b+c

c5: b﹤a+c

c6: c﹤a+b

程式的輸出是由這三條邊確定的三角形型別:等邊三角形、等腰三角形、不等邊三角形或非三角形。如果輸入值沒有滿足這些條件中的任何乙個,則程式會通過輸出訊息來進行通知,例如,"b的取值不在允許取值的範圍內。"如果a、b和c取值滿足c1、c2和c3,則會給出以下四種相互排斥輸出中的乙個:

(1)如果三條邊相等,則程式的輸出是等邊三角形。

(2)如果恰好有兩條邊相等,則程式輸出的是等腰三角形。

(3)如果沒有兩條邊相等,則程式輸出的是不等邊三角形。

(4)如果c4、c5和c6中有乙個條件不滿足,則程式輸出的是非三角形。

傳統實現:

結構化實現:

這個例子經久不衰的一部分原因就是,包含了清晰而又複雜的邏輯、削弱客戶、開發人員和測試人員之間溝通的不完整定義的典型例子。

2.nextdata函式:nextdate是乙個有三個變數(月份、日期和年)的函式。函式返回輸入日期後面的那個日期。變數月份、日期和年都是整數,且滿足以下條件:

c1:1≤月份≤12

c2:1≤日期≤31

c3:1812≤年≤2012

對無效的輸入日期,比如6月31日,或c1、c2、c3中的任意乙個條件失敗,則nextdate,都會產生乙個輸出,指示其為無效日期,或給出具體的無效原因,或籠統的給出"無效日期輸入。"提示。

3.佣金問題:步***商銷售製造商製造的步槍機(lock)、槍托(stock)和槍管(barrel)。槍機賣45美元,槍托賣30美元,槍管賣25美元。銷售商每月至少要售出乙隻完整的步槍,且生產限額是大多數銷售商在乙個月內科銷售70個槍機、80個槍托和90個槍管。每訪問乙個鎮子之後,銷售商都給製造商發出電報,說明在那個鎮子中售出的槍機、槍托和槍管數量。到了月末,銷售商要發出一封很短的電報,通知-1個槍機被售出。這樣步槍製造商就知道當月的銷售情況,並計算銷售商的佣金如下:銷售額不到(含)1000美元的部分為10%,1000(不含)~1800(含)美元的部分15%,超過1800美元的部分20%。佣金程式生成月份銷售報告,彙總售出的槍機、槍托和槍管總數,銷售商的總銷售額以及佣金。

這個問題分為三個不同的部分:輸入資料部分,用來處理輸入資料有效性;銷售額計算部分;以及佣金計算部分。在實現中省略資料輸入有效性部分,使用while迴圈模擬電報規則。

4.為了更好討論整合和系統測試問題,這裡介紹乙個適用範圍更大的範圍。

MySQL第二章總結 Mysql第二章 儲存引擎

1 本章目標 儲存引擎 資料型別 重點 2 儲存引擎 在關係型資料庫中,資料儲存在表中,表由行和列組成。開發中,可能需要各種不同的表,有的表簡單,有的表複雜,有的表讀取快,有的讀取資料慢,有的表更新快等。根據對資料的不同的處理需求,使用不同的儲存引擎,可以將mysql資料庫的效能發揮到最大。查詢my...

領悟(第二章)

當火車緩緩駛進車站的時候,夜幕已經降臨了。終於到了!望著窗外鐵道兩旁的燈火,我的內心不禁再一次的激動起來,一路上對今後在這個大都市的未來生活的想象已經讓我從昨天晚上上車一直興奮到現在了!平常這個時候應該正和朋友們一起在酒吧聊天吧,朋友們,你們現在還在談論我來這裡的目的麼?說實話,這個問題連我自己都說...

第二章 入門

第二章 入門 1 django 安裝 使用 django 的唯一先決條件是安裝 python 在 linux 平台可能包括如下步驟 2 tar xzvf django tar.gz。3 cd django 4 sudo python setup.py install。2 匯入 django模組 im...