資源簡介 非選擇題專項(四)二、非選擇題(本大題共3小題,其中第13題8分,第14題9分,第15題9分,共26分)13.小陳要搭建“閱覽室噪音監控系統”。該系統中的智能終端從服務器獲取分貝閾值。根據該閾值和傳感器采集的分貝值控制LED燈。并將分貝值等數據傳輸至Web服務器,存儲到數據庫中。用戶可通過瀏覽器查詢實時和歷史數據。硬件按如下方式連接:聲音傳感器和LED燈接入智能終端,智能終端通過IoT模塊連接到服務器。請回答下列問題:(1)下列關于該信息系統的說法,正確的是________(多選,填字母)。(注:全部選對的得,選對但不全的得1分,不選或有選錯的得0分)A.該系統采用了C/S開發模式B.數據庫管理系統選擇屬于概要設計C.控制LED燈亮和滅采用了傳感技術D.從多角度觀察程序運行時的行為,發現其中的錯誤,屬于動態測試(2)智能終端上傳數據到服務器,包括URL參數v=60,已知Web服務的IP地址為192.168.1.100,端口號為5000,服務器端應用實例App中與該URL關聯的路由設置語句是@app.route(″/input″)。則上傳數據的網址是___________________________________________________________________。(3)智能終端上的程序具有如下功能:每隔10秒從傳感器獲取噪音分貝值,LED燈處于燈滅狀態時,若噪音分貝值超過閾值maxv,則LED燈亮。LED燈處于燈亮狀態時,若噪音分貝值小于等于閾值maxv,則LED燈滅。每隔10秒將分貝值和LED燈狀態數據傳輸到服務器。部分Python程序如下,請在程序中劃線處填入合適的代碼。#導入相關庫,并從服務器獲取閾值,保存在maxv中,代碼略maxv=ht=0while True: #從傳感器獲取分貝值,保存在voice中,代碼略 if t==0: if ① : t= 1 #打開LED燈,代碼略 else: if voice<=maxv: ② #關閉LED燈,代碼略 #將voice,t等數據傳輸到服務器。代碼略 sleep(10000) #延時10秒(4)請通過增加傳感器和執行器對該系統功能進行一項擴展,寫出增加的傳感器和執行器名稱及實現的功能____________________________________________________________________________________________________________________。14.2023年女足世界杯小組賽晉級規則為:32支參賽隊伍通過抽簽分為八個小組,每個小組分別有四支球隊進行比賽,勝平負分別積3分、1分、0分。每個小組積分的前兩名球隊晉級,積分相同的凈勝球多的球隊晉級,凈勝球相同的進球數多的球隊晉級。小組賽數據存放在“女足世界杯小組賽積分.xlsx”文件中,如圖a所示。圖a現用Python程序對表中數據進行處理,得到16支晉級球隊名單,并輸出如圖b所示的圖表。圖b(1)定義tj函數,功能為:使用Pandas讀取文件數據,計算每支球隊的積分,并返回一個Dataframe對象。實現相應功能的Python函數代碼如下,劃線處應填入的代碼為________。import pandas as pdimport matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei'] #顯示中文def tj(filename): #filename 為 excel 文件名稱 df=pd.read_excel(filename) for i in df.index: df.at[i,″積分″]= return df(2)定義jsq函數,將Dataframe對象df中的“進失比”列(如數據″8比1″,8為進球數,1為失球數,凈勝球數為7)求出各球隊的凈勝球、進球數。劃線處應填入的代碼為 。def jsq(df): for i in df.index: a,b=map(int,df.at[i,″進失比″].split(″比″))#8比1,則a=8,b=1 df.at[i,″進球數″]=a return df(3)為了求出八個小組中晉級名單,按照小組 A~H、積分由高到低的順序,繪制圖表如圖b所示。實現相應功能的代碼如下:filename=″女足世界杯小組賽積分.xlsx″df=tj(filename)df=① #以“小組”為主要關鍵字升序,“積分”“凈勝球”“進球數”為次要關鍵字降序排列df=df.sort_values([″小組″,'積分', ″凈勝球″ ,'進球'],ascending=[② ,False,False,False]) #按小組分組并取出每組前 2 隊數據df1=df.groupby(③ ,as_index = False).head(2)plt.bar(④ ) #繪制如圖 b 所示圖表plt.title('2023 女足世界杯 16 強球隊')#設置圖表格式,代碼略plt.show()15.將若干件貨物裝入n輛貨車,每輛貨車載重上限為m,每件貨物的重量不超過m,所有貨物總重量為n×m。裝車過程中,貨物不可拆分,每輛貨車能滿載。例如,將8件貨物裝入4輛貨車,每輛貨車的載重上限為6。每件貨物編號及重量如圖a所示,則貨車裝載的貨物編號情況可能有多種,其中一種如圖b所示,結果為[[1],[2,4],[5,6],[3,7,8]]。編寫程序,實現求出各貨車裝載方案。請回答下列問題:(1)將圖a所示的8件貨物裝入3輛貨車,每輛貨車載重上限為8,則貨車裝載的貨物編號情況為[[1,4],________________]。(2)定義如下Bsort(lst)函數,參數lst的每個元素由貨物編號和貨物重量2個數據項組成。函數的功能是根據貨物的重量,對lst進行降序排序。def Bsort(lst): n = len(lst) i = 0 while i _________ for j in range(n-1,i,-1): lst[j-1],lst[j]=lst[j],lst[j-1] p=j i=p return lst若lst為[[1,6],[2,4],[3,3],[4,2],[5,1],[6,5],[7,2],[8,1]],請回答下列問題。①劃線處應填寫的正確代碼是 (單選,填字母)。A.p=0 B.p=n-1C.i=0 D.i=n-1②方框中語句的執行次數為 。(3)實現貨物裝車功能的部分Python程序如下,程序中用到的列表函數與方法如表所示請在程序中劃線處填入合適的代碼。函數與方法 功能w.append(x) 在列表w末尾添加元素xx=w.pop(0) 將列表w首位元素賦值給x,并將其從w中刪除def group(m,n): global cnt #cnt聲明為全局變最,在函數內外都可見和修改 d=[0]*(m+1) pre=[-1]*(m+1) for i in range(len(a)): #搜索出重量總和為m值的貨物編號 if b[i]: for j in range(m,a[i][1]-1,-1): if d[j] d[j]=d[j-a[i][1]]+a[i][1] pre[j]=i if d[m]==m: p=m while pre[p]!=-1: j=pre[p] p=p-a[j][1] gnum[cnt%n].append(① ) q.append([cnt%n,j]) b[j]=False return True return False'''讀取每輛貨車的載重上限存入m,所需貨車數存入n;讀取所有貨物數據,依次存入列表lst中。lst[i]包含2個數據項,lst[i][0],1st[i][1]分別存放貨物編號及貨物重量,代碼略。'''a=Bsort(lst)b=[True]*len(a)cnt=0gnum,q=[],[]for i in range(n): gnum.append([]) #gnum[i]存放編號為i+1的貨車所分配到的貨物編號while len(q)!=len(a): ② if flag: cnt+=1 else: tmp=q.pop(0) gnum[tmp[0]]=[] ③ #輸出每輛貨車承載貨物的情況,代碼略。非選擇題專項(四)13.(1)BD (2)http:∥192.168.1.100:5000/input?v=60(3)①voice>maxv ②t=0 (4)答案不唯一,可從光、氣、溫、濕等環境量著手答題,以下方案任選一種:傳感器執行器實現功能;溫度傳感器電機溫度值大于最高值或溫度低于最低值,開空調制冷或制熱;濕度傳感器電機濕度值低于最低值,打開加濕器;氣敏傳感器電機有異味開窗;氣體光感器LED燈采集空氣質量數據,提示異常;光線傳感器電機采取光線值,調節燈光。解析 (1)A選項屬于B/S模式。C選項LED燈是執行器,采用了控制技術。(2)略。(3)①變量t表示LED燈狀態,LED燈處于燈滅狀態時,若噪音分貝值voice超過閾值maxv,則LED燈亮。②LED燈處于燈亮狀態時,若噪音分貝值小于等于閾值maxv,則LED燈滅,須改變狀態t的值為0。(4)略。14.(1)df.at[i,″勝″] * 3 + df.at[i,″平″](2)df.at[i,″凈勝球″] = a - b (3)①jsq(df)②True ③″小組″ ④df1[″球隊″],df1[″積分″]解析 本題考查利用Pandas進行數據統計的相關知識。(1)計算每支球隊的積分。勝平負分別積3分、1分、0分,因此每個單元格的計算公式為df.at[i,″勝″] * 3 + df.at[i,″平″]。(2)計算各球隊凈勝球,變量a表示進球數,變量b表示失球數,凈勝球的值為a-b數。(3)①調用jsq函數,計算df中的“進失比”列。②以“小組”為主要關鍵字升序,升序的ascending值為True。③繪制各個小組的積分情況,因此需按小組進行分組并取出每組前2隊數據。④圖表橫軸為各小組前2名df1[″球隊″],縱軸為各小組對應的積分df1[″積分″]。15.(1)[3,6],[2,5,7,8] 或[2,3,5],[6,7,8]或[2,3,8],[5,6,7] (2)①B ②13 (3) ①a[j][0] ②flag=group(m,n) ③b[tmp[1]]=True解析 (1)8件貨物裝3輛車,每輛車的載重上限為8,貨物編號可為[3,6],[2,5,7,8] 或[2,3,5],[6,7,8]或[2,3,8],[5,6,7]。(2)①p變量記錄最后一次換數的位置,下一輪冒泡的范圍為[p,n-1]。②表示總的比較次數,3次冒泡以后退出外循環,比較次數依次為7+5+1=13。(3)①a[j][0]表示物品編號,a[j][1]表示重量。在確認有效方案后,對gnum數組gnum[cnt % n]的更新,即在方案中物品添加物品的編號。②Group函數對剩余未被b數組標記的元素分組,若分組成功則標記這些元素并返回True,否則返回False。變量flag標記分組的結果即flag = group(m,n),當flag為True時更新方案數,否則進行回溯,將前一次標記的元素回退到未被標記的狀態,清空上一次的方案。③tmp = q.pop()中,變量tmp記錄的已標記的答案中的第一個數據,其中tmp[0]該元素所在方案的編號,gnum[tmp[0]] = []即清空該方案。與此同時還需要重置該元素在b數組中標記狀態,即b[tmp[1]] = True。(共20張PPT)非選擇題專項(四)第三部分 數據的存儲與邏輯結構二、非選擇題(本大題共3小題,其中第13題8分,第14題9分,第15題9分,共26分)13.小陳要搭建“閱覽室噪音監控系統”。該系統中的智能終端從服務器獲取分貝閾值。根據該閾值和傳感器采集的分貝值控制LED燈。并將分貝值等數據傳輸至Web服務器,存儲到數據庫中。用戶可通過瀏覽器查詢實時和歷史數據。硬件按如下方式連接:聲音傳感器和LED燈接入智能終端,智能終端通過IoT模塊連接到服務器。請回答下列問題:(1)下列關于該信息系統的說法,正確的是 (多選,填字母)。(注:全部選對的得,選對但不全的得1分,不選或有選錯的得0分)A.該系統采用了C/S開發模式B.數據庫管理系統選擇屬于概要設計C.控制LED燈亮和滅采用了傳感技術D.從多角度觀察程序運行時的行為,發現其中的錯誤,屬于動態測試(2)智能終端上傳數據到服務器,包括URL參數v=60,已知Web服務的IP地址為192.168.1.100,端口號為5000,服務器端應用實例App中與該URL關聯的路由設置語句是@app.route(″/input″)。則上傳數據的網址是____________________。(3)智能終端上的程序具有如下功能:每隔10秒從傳感器獲取噪音分貝值,LED燈處于燈滅狀態時,若噪音分貝值超過閾值maxv,則LED燈亮。LED燈處于燈亮狀態時,若噪音分貝值小于等于閾值maxv,則LED燈滅。每隔10秒將分貝值和LED燈狀態數據傳輸到服務器。部分Python程序如下,請在程序中劃線處填入合適的代碼。#導入相關庫,并從服務器獲取閾值,保存在maxv中,代碼略maxv=ht=0while True:(4)請通過增加傳感器和執行器對該系統功能進行一項擴展,寫出增加的傳感器和執行器名稱及實現的功能____________________________________________________________________________________________________________________。答案 (1)BD (2)http:∥192.168.1.100:5000/input?v=60 (3)①voice>maxv ②t=0 (4)答案不唯一,可從光、氣、溫、濕等環境量著手答題,以下方案任選一種:傳感器執行器實現功能;溫度傳感器電機溫度值大于最高值或溫度低于最低值,開空調制冷或制熱;濕度傳感器電機濕度值低于最低值,打開加濕器;氣敏傳感器電機有異味開窗;氣體光感器LED燈采集空氣質量數據,提示異常;光線傳感器電機采取光線值,調節燈光。解析 (1)A選項屬于B/S模式。C選項LED燈是執行器,采用了控制技術。(2)略。(3)①變量t表示LED燈狀態,LED燈處于燈滅狀態時,若噪音分貝值voice超過閾值maxv,則LED燈亮。②LED燈處于燈亮狀態時,若噪音分貝值小于等于閾值maxv,則LED燈滅,須改變狀態t的值為0。(4)略。14.2023年女足世界杯小組賽晉級規則為:32支參賽隊伍通過抽簽分為八個小組,每個小組分別有四支球隊進行比賽,勝平負分別積3分、1分、0分。每個小組積分的前兩名球隊晉級,積分相同的凈勝球多的球隊晉級,凈勝球相同的進球數多的球隊晉級。小組賽數據存放在“女足世界杯小組賽積分.xlsx”文件中,如圖a所示。圖a現用Python程序對表中數據進行處理,得到16支晉級球隊名單,并輸出如圖b所示的圖表。圖b#設置圖表格式,代碼略plt.show()答案 (1)df.at[i,″勝″] * 3 + df.at[i,″平″](2)df.at[i,″凈勝球″] = a - b (3)①jsq(df)②True ③″小組″ ④df1[″球隊″],df1[″積分″]解析 本題考查利用Pandas進行數據統計的相關知識。(1)計算每支球隊的積分。勝平負分別積3分、1分、0分,因此每個單元格的計算公式為df.at[i,″勝″] * 3 + df.at[i,″平″]。(2)計算各球隊凈勝球,變量a表示進球數,變量b表示失球數,凈勝球的值為a-b數。(3)①調用jsq函數,計算df中的“進失比”列。②以“小組”為主要關鍵字升序,升序的ascending值為True。③繪制各個小組的積分情況,因此需按小組進行分組并取出每組前2隊數據。④圖表橫軸為各小組前2名df1[″球隊″],縱軸為各小組對應的積分df1[″積分″]。15.將若干件貨物裝入n輛貨車,每輛貨車載重上限為m,每件貨物的重量不超過m,所有貨物總重量為n×m。裝車過程中,貨物不可拆分,每輛貨車能滿載。例如,將8件貨物裝入4輛貨車,每輛貨車的載重上限為6。每件貨物編號及重量如圖a所示,則貨車裝載的貨物編號情況可能有多種,其中一種如圖b所示,結果為[[1],[2,4],[5,6],[3,7,8]]。編寫程序,實現求出各貨車裝載方案。請回答下列問題:(3)實現貨物裝車功能的部分Python程序如下,程序中用到的列表函數與方法如表所示請在程序中劃線處填入合適的代碼。函數與方法 功能w.append(x) 在列表w末尾添加元素xx=w.pop(0) 將列表w首位元素賦值給x,并將其從w中刪除答案 (1)[3,6],[2,5,7,8] 或[2,3,5],[6,7,8]或[2,3,8],[5,6,7] (2)①B ②13 (3) ①a[j][0] ②flag=group(m,n) ③b[tmp[1]]=True解析 (1)8件貨物裝3輛車,每輛車的載重上限為8,貨物編號可為[3,6],[2,5,7,8] 或[2,3,5],[6,7,8]或[2,3,8],[5,6,7]。(2)①p變量記錄最后一次換數的位置,下一輪冒泡的范圍為[p,n-1]。②表示總的比較次數,3次冒泡以后退出外循環,比較次數依次為7+5+1=13。(3)①a[j][0]表示物品編號,a[j][1]表示重量。在確認有效方案后,對gnum數組gnum[cnt % n]的更新,即在方案中物品添加物品的編號。②Group函數對剩余未被b數組標記的元素分組,若分組成功則標記這些元素并返回True,否則返回False。變量flag標記分組的結果即flag = group(m,n),當flag為True時更新方案數,否則進行回溯,將前一次標記的元素回退到未被標記的狀態,清空上一次的方案。③tmp = q.pop()中,變量tmp記錄的已標記的答案中的第一個數據,其中tmp[0]該元素所在方案的編號,gnum[tmp[0]] = []即清空該方案。與此同時還需要重置該元素在b數組中標記狀態,即b[tmp[1]] = True。 展開更多...... 收起↑ 資源列表 非選擇題專項(四).pptx 非選擇題專項(四)(含解析).docx 縮略圖、資源來源于二一教育資源庫