資源描述:
《軟件工程導(dǎo)論(張海藩)習(xí)題解》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、2-4分層次地畫出描述本系統(tǒng)功能的數(shù)據(jù)流圖l從問題陳述可知,本系統(tǒng)數(shù)據(jù)源點(diǎn)是“病人”和“護(hù)士”,他們分別提供生理信號和要求病情報(bào)告的信息。進(jìn)一步分析問題陳述,從系統(tǒng)應(yīng)該“定時(shí)記錄病人情況以形成患者日志”這項(xiàng)要求可以想到,還應(yīng)該有一個(gè)提供日期和時(shí)間信息的“時(shí)鐘”作為數(shù)88據(jù)源點(diǎn)。l從問題陳述容易看出,本系統(tǒng)的數(shù)據(jù)終點(diǎn)是接收警告信息和病情報(bào)告的護(hù)士。l系統(tǒng)對病人生理信號的處理功能主要是“接收信號”、“分析信號”和“產(chǎn)生警告信息”。l此外,系統(tǒng)還應(yīng)該具有“定時(shí)取樣生理信號”、“更新日志”和“產(chǎn)生病情報(bào)告”的功能。l為了分析病人生理信號是否超出了醫(yī)生規(guī)定的安全范圍
2、,應(yīng)該存儲“患者安全范圍”信息。此外,定時(shí)記錄病人生理信號所形成的“患者日志”,顯然也是一個(gè)數(shù)據(jù)存儲。2-5l數(shù)據(jù)結(jié)構(gòu)的描述符號含義舉例=被定義為+與x=a+b[...,...]或[...
3、...]或x=[a,b],x=[a
4、b]{...}或m{...}n重復(fù)x={a},x=3{a}8(...)可選x=(a)“...”基本數(shù)據(jù)元素x=“a”..連結(jié)符x=1..9l電話號碼=[校內(nèi)電話號碼
5、校外電話號碼]l校內(nèi)電話號碼=非零數(shù)字+3位數(shù)字//后面繼續(xù)定義l校外電話號碼=[本市號碼
6、外地號碼]l本市號碼=數(shù)字零+8位數(shù)字l外地號碼=數(shù)字零+3位數(shù)字+8位數(shù)字l
7、非零數(shù)字=[1
8、2
9、3
10、4
11、5
12、6
13、7
14、8
15、9]l數(shù)字零=0l3位數(shù)字=3{數(shù)字}3//3至3個(gè)數(shù)字l8位數(shù)字=非零數(shù)字+7位數(shù)字l7位數(shù)字=7{數(shù)字}7l數(shù)字=[0
16、1
17、2
18、3
19、4
20、5
21、6
22、7
23、8
24、9]3-3銀行計(jì)算機(jī)儲蓄系統(tǒng)請用數(shù)據(jù)流圖描繪本系統(tǒng)的功能,并用實(shí)體-聯(lián)系圖描繪系統(tǒng)中的數(shù)據(jù)對象。lER模型ü本問題中共有兩類實(shí)體,分別是“儲戶”和“儲蓄所”,在它們之間存在“存取款”關(guān)系。因?yàn)橐晃粌艨梢栽诙嗉覂π钏嫒】?,一家儲蓄所擁有多位儲戶,所以“存取款”是多對多(M:N)關(guān)系。ü儲戶的屬性主要有姓名、住址、電話號碼和身份證號碼,儲蓄所的屬性主要是名稱、
25、地址和電話號碼,而數(shù)額、類型、到期日期、利率和密碼則是關(guān)系類型存取款的屬性。3-6復(fù)印機(jī)的工作過程大致如下l從問題陳述可知,復(fù)印機(jī)的狀態(tài)主要有“閑置”、“復(fù)印”、“缺紙”和“卡紙”。引起狀態(tài)轉(zhuǎn)換的事件主要是“復(fù)印命令”、“完成復(fù)印命令”、“發(fā)現(xiàn)缺紙”、“裝滿紙”、“發(fā)生卡紙故障”和“排除了卡紙故障”。用面向數(shù)據(jù)流的方法設(shè)計(jì)下列系統(tǒng)的軟件結(jié)構(gòu)(1)儲蓄系統(tǒng)2-2(2)機(jī)票預(yù)定系統(tǒng)2-3l為了方便旅客,某航空公司擬開發(fā)一個(gè)機(jī)票預(yù)定系統(tǒng)。旅行社把預(yù)定機(jī)票的旅客信息(姓名、性別、工作單位、身份證號碼、旅行時(shí)間、旅行目的地等)輸入該系統(tǒng),系統(tǒng)為旅客安排航班,旅客在飛
26、機(jī)起飛前一天憑取票通知和賬單交款取票,系統(tǒng)核對無誤即印出機(jī)票給顧客(2)患者監(jiān)護(hù)系統(tǒng)2-4可以是兩個(gè)子系統(tǒng),預(yù)定和取票是不同的處理方式(后臺批量和前臺單個(gè))P131:3畫出下列偽碼程序的程序流程圖和盒圖STARTIFpTHENWHILEqDOfENDDOELSEBLOCKgnENDBLOCKENDIFSTOP下圖給出的程序流程圖代表一個(gè)非結(jié)構(gòu)化的程序,請問:(1)為什么說它是非結(jié)構(gòu)化的?(2)設(shè)計(jì)一個(gè)等價(jià)的結(jié)構(gòu)化程序。(3)在(2)題的設(shè)計(jì)中你使用附加的標(biāo)志變量flag嗎?若沒用,請?jiān)僭O(shè)計(jì)一個(gè)使用flag的程序;若用了,再設(shè)計(jì)一個(gè)不用flag的程序(1)通
27、常所說的結(jié)構(gòu)化程序,是按照狹義的結(jié)構(gòu)程序的定義衡量,符合定義規(guī)定的程序。圖示的程序的循環(huán)控制結(jié)構(gòu)有兩個(gè)出口,顯然不符合狹義的結(jié)構(gòu)程序的定義,因此是非結(jié)構(gòu)化的程序。(2)使用附加的標(biāo)志變量flag,至少有兩種方法可以把該程序改造為等價(jià)的結(jié)構(gòu)化程序,圖示盒圖描繪了等價(jià)的結(jié)構(gòu)化程序。(3)不使用flag把該程序改造為等價(jià)的結(jié)構(gòu)化程序的方法如圖所示。P131:8畫出下列偽碼程序的流圖,計(jì)算它的環(huán)形復(fù)雜度。你覺得這個(gè)程序的邏輯有什么問題嗎?CEXAMPLELOOP:DOWHILEX>0A=B+1IFA>10THENX=AELSEY=ZENDIFIFY<5THENPR
28、INTX,YELSEIFY=2THENGOTOLOOPELSEC=3ENDIFENDIFG=H+RENDDOIFF>0THENPRINTGELSEPRINTKENDIFSTOPV(G)=結(jié)點(diǎn)E-弧數(shù)n+1=17-11+1=7=判斷結(jié)點(diǎn)+1=6+1=7=封閉的區(qū)域數(shù)P131:7lll令P代表交易的總金額,Q代表每股的售價(jià),n代表交易的股數(shù)。l(1)表示手續(xù)費(fèi)計(jì)算方法的判定表如圖所示。l判定表的每一列是一條計(jì)算規(guī)則。例如,第1列(規(guī)則1)規(guī)定,當(dāng)交易總金額P少于1000元,且每股售價(jià)Q低于14元,且交易的股數(shù)n是100的倍數(shù)時(shí),給經(jīng)紀(jì)人的手續(xù)費(fèi)為l(l+0.0
29、5)×0.084Pl第16列(規(guī)則16)表明,當(dāng)交易總金額P超過1