第
3題: 閱讀下列說明和圖,回答問題1至問題3,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。
[說明]
某中醫(yī)醫(yī)院擬開發(fā)一套線上抓藥APP,允許患者憑借該醫(yī)院醫(yī)生開具的處方線上抓藥,并提供免費(fèi)送藥上門服務(wù)。該系統(tǒng)的主要功能描述如下:
(1)注冊(cè)。患者掃描醫(yī)院提供的=維碼進(jìn)行注冊(cè),注冊(cè)過程中,患者需提供其病歷號(hào),系統(tǒng)根據(jù)病歷號(hào)自動(dòng)獲取患者基本信息。
(2)登錄。已注冊(cè)的患者可以登錄系統(tǒng)進(jìn)行線上抓藥,未冊(cè)的患者系統(tǒng)拒絕其登陸。
	(3)確認(rèn)處方。患者登錄后,可以查看醫(yī)生開具的所有處方?;颊哌x擇需要抓藥的處方和數(shù)量(需要抓幾副藥), 同時(shí)說明是否需要煎制。選擇取藥方式:自行到店取藥或者送藥上門,若選擇送藥上門,患者需要提供提供收貸人姓名、聯(lián)系方式和收貨地址。系統(tǒng)自動(dòng)計(jì)算本次抓藥的費(fèi)用,患者可以使用微信或支付寶等支付方式支付費(fèi)用。支付成功之后,處方被發(fā)送給藥師進(jìn)行藥品配制。


[問題1] (7分)
根據(jù)說明中的描述,給出圖3-1中A1~ A3所對(duì)應(yīng)的參與者名稱和U1 ~U4處所對(duì)應(yīng)的用例名稱。
[問題2] (5分)
根據(jù)說明中的描述,給出圖3-2中C1~C5所對(duì)應(yīng)的類名。
[問題3] (3分)
簡(jiǎn)要解釋用例之間的include、extend 和generalize關(guān)系的內(nèi)涵。
答案解析與討論:
www.xomuzic.com/st/4550322566.html第
4題: 
	閱讀下列說明和C代碼,回答問題1和問題2,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。
[說明]
凸多邊形是指多邊形的任意兩點(diǎn)的連線均落在多邊形的邊界或者內(nèi)部。相鄰的點(diǎn)連線落在多邊形邊上,稱為邊,不相鄰的點(diǎn)連線落在多邊形內(nèi)部。稱為弦。假設(shè)任意兩點(diǎn)連線上均有權(quán)重,凸多邊形最優(yōu)三幫劑分問題定義為:求將凸多邊形劃分為不相交的三角形集合,且各三角形權(quán)重之和最小的剖分方案。每個(gè)三角形的權(quán)重為三條邊權(quán)重之和。
假設(shè)N個(gè)點(diǎn)的凸多邊形點(diǎn)編號(hào)為V1,V2,……,VN,若在VK處將原凸多邊形劃分為一個(gè)三角形V1VkVN,兩個(gè)子多邊形V1,V2,…,Vk和Vk,Vk+1,…VN,得到一個(gè)最優(yōu)的剖分方案,則該最優(yōu)剖分方案應(yīng)該包含這兩個(gè)子凸邊形的最優(yōu)剖分方案。用m[i][j]表示帶你Vi-1,Vi,…Vj構(gòu)成的凸多邊形的最優(yōu)剖分方案的權(quán)重,S[i][j]記錄剖分該凸多邊形的k值。
則
	
	其中:
			Wj,i-1分別為該三角形三條邊的權(quán)重。求解凸多邊形的最優(yōu)剖分方案,即求解最小剖分的權(quán)重及對(duì)應(yīng)的三角形集。
					[C代碼]
							#include
									#define N 6
											//凸多邊形規(guī)模
													int m[N+1] [N+1]; //m[i][j]表示多邊形Vi-1到Vj最優(yōu)三角剖分的權(quán)值
															int S[N+1] [N+1]; //S[i][j]記錄多邊形Vi-1 到Vj最優(yōu)三角剖分的k值
																	int W[N+1] [N+1]; //凸多邊形的權(quán)重矩陣,在main函數(shù)中輸入
																			/*三角形的權(quán)重a,b,c,三角形的頂點(diǎn)下標(biāo)*/
																					int get_ triangle_weight(int a,int b,int c){
																							return W[a][b]+W[b][c]+W[c][a];
																									}
																											/*求解最優(yōu)值*/
																													void triangle_partition(){
																															int i,r,k,j;
																																	int temp;
																																			/*初始化*/
																																					for(i=1;i<=N;i++){
																																							m[i][i]=0;
																																									}
																																											/*自底向上計(jì)算m,S*/
																																													for(r=2;(1);r++){/*r為子問題規(guī)模*/ //r<=N
																																															for(i=1;k<=N-r+1;i++){
																																																	(2); //int j=i+r-1
																																																			m[i][j]= m[i][j]+m[i+1][j]+get_triangle_weight(i-1,i,j); /*k=j*/
																																																					S[i][j]=i;
																																																							for(k=j+1;k
																																																									temp=m[i][k]+m[k+1][j]+ge_triangle_ weight(i-1,k,j);
																																																											if((3)){/*判斷是否最小值*/ //temp
																																																													m[i][j]=temp;
																																																															S[i][j]=k;
																																																																	}
																																																																			}
																																																																					}
																																																																							}
																																																																									}
																																																																											/*輸出剖分的三角形i,j:凸多邊形的起始點(diǎn)下標(biāo)*/
																																																																													void print_triangle(int i,int j){
																																																																															if(i==j) return;
																																																																																	print_triangle(i,S[i][j]);
																																																																																			print_
																																																																																					triangle((4)); //s[i][j]+1,j
																																																																																							print(“V%d- -V%d-
																																																																																									-V%d\n“,i-1,S[i][j],j);
																																																																																											}
																																																																																													[問題1] (8分)
																																																																																															根據(jù)說明和C代碼,填充C代碼中的空(1) ~ (4)。
																																																																																																	[問題2] (7分)
																																																																																																			根據(jù)說明和C代碼,該算法采用的設(shè)計(jì)策略為(5),算法的時(shí)間復(fù)雜度為(6),空間復(fù)雜度為(7) (用0表示)。
																																																																																																					
																																																		
																																																	 																																																 																																															 																																														 																																													 																																												 																																											 																																										 																																									 																																								 																																							 																																						 																																					 																																				 																																			 																																		 																																	 																																 																															 																														 																													 																												 																											 																										 																									 																								 																							 																						 																					 																				 																			 																		 																	 																 															 														 													 												 											 										 									 								 							 						 					 				 			 		 	答案解析與討論:
www.xomuzic.com/st/455048357.html第
5題: 閱讀下列說明和C++代碼,將應(yīng)填入(n)處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)。
【說明】
層疊買單是留口風(fēng)格的軟件系統(tǒng)中經(jīng)常采用的一種系統(tǒng)功能組織方式。層疊菜單(如到5-1示例)中包含的可能是一個(gè)菜單項(xiàng)(直接對(duì)應(yīng)某個(gè)功能),也可能是一個(gè)子菜單?,F(xiàn)采用組合(Compa site)設(shè)計(jì)模式實(shí)現(xiàn)層疊菜單,得到如圖5-2所示的類圖。

	

答案解析與討論:
www.xomuzic.com/st/4550523215.html