民國115年 高考三級 統計 資料處理考古題

民國115年 高考三級 統計 資料處理收錄考選部官方試題,共 4 題可線上瀏覽,考選部未公告本科目答案。

官方資料

題目與答案

第1題

某政府機關建置「智慧交通監測系統」,透過路口攝影機每秒擷取一張 交通影像,並即時分析車流量後提供民眾查詢。系統主要兩項工作為: A:接收並儲存交通影像、B:分析影像中的車輛數量。系統每秒接收1 張原始影像,每張原始影像解析度為1280 × 720 pixels,色彩深度為24 bits/pixel,之後為節省空間轉換為PNG 格式。請說明系統儲存每張原 始未壓縮影像、以及1 分鐘內所需資料空間(KByte)。另外,為提高系 統效能,作業系統將工作A 與工作B 分別建立為兩個獨立Process,並 採用Round Robin 排程管理CPU,其時間片(Time Quantum)為4 ms; 若工作A 完成一次影像儲存與工作B 完成一次影像分析,分別需8 ms 與12 ms,且工作A 與工作B 於時間0 同時進入就緒佇列,排程順序 為A 先於B。請說明CPU 執行順序,並計算工作A 與工作B 的等待時 間。(25 分)

參考解答(AI 生成,非官方)

  • 一、單張影像大小:像素總數為1280×720=921,600 pixels,每像素24 bits,總位元數為921,600×24=22,118,400 bits;除以8得2,764,800 bytes,再除以1024得2,700 KByte。此為未壓縮原始影像;題目未提供PNG壓縮率,因此無法判斷PNG檔大小,只能說通常小於原始檔。
  • 二、每分鐘所需空間:每秒1張、每分鐘60張,60×2,700 KByte=162,000 KByte,約158.2 MiB。若採十進位KB則為165,888 KB,但題目指定KByte,宜以1 KByte=1024 bytes換算。實務上仍須外加檔案標頭、索引、檔案系統與備份空間,長期保存並應搭配壓縮、輪替與容量監控。
  • 三、輪轉排程(Round Robin, RR)順序:時間0時A、B同時就緒且A先,時間片為4 ms,0–4由A執行;4–8由B執行;8–12再由A執行4 ms後完成,A合計8 ms。12–16由B執行;B尚餘4 ms,因無其他就緒程序,16–20繼續執行至完成。故執行順序為A→B→A→B→B,完成時間分別為A=12 ms、B=20 ms。
  • 四、等待時間:等待時間指程序就緒但未取得CPU的時間。A僅在4–8 ms等待,等待4 ms;B在0–4 ms等待4 ms,又在8–12 ms等待4 ms,合計8 ms。平均等待時間為(4+8)/2=6 ms,平均周轉時間為(12+20)/2=16 ms。時間片屆滿而無其他就緒工作時,實務上可讓同一程序續用CPU,不重複計入等待。

第2題

某政府機關為提升服務品質與系統擴充能力,近期規劃建置新一代「數 位政府服務平台」,提供民眾單一入口網站登入、身分驗證、個人資料查 詢、跨機關資料交換、線上申辦、表單下載、文件上傳、操作手冊及相 關文件下載等服務。由於系統需長期支援全國民眾使用,且於報稅季、 補助申請期間經常出現大量同時上線情況,因此資訊部門規劃採用雲端 架構建置系統,並特別重視資料安全、網路效能及服務可用性。當民眾 透過瀏覽器連線至政府服務平台後,系統需透過網路設備將封包傳送至 資料中心;使用者登入與上傳文件時,需確保資料傳輸安全;當大量民 眾同時存取系統時,則需透過流量分散與內容快取機制維持系統效能與 服務穩定。請分別說明路由器(Router)、HTTPS、負載平衡器(Load Balancer)與內容傳遞網路(CDN)在本案例中的功能,以及其對系統安 全性、效能或可用性之貢獻。(25 分)

參考解答(AI 生成,非官方)

  • 一、路由器(Router):運作於開放系統互連(OSI)模型第三層,依IP位址與路由表選擇路徑,連接民眾端網際網路、政府骨幹與資料中心,並可執行網路位址轉譯(NAT)、存取控制清單(ACL)及流量分類。安全上可依來源與目的網段限制存取;效能上選擇較佳路徑並分散壅塞;可用性上以多條上行鏈路、動態路由與備援路徑避免單點失效。
  • 二、HTTPS(HTTP over TLS,安全超文本傳輸協定):以憑證驗證伺服器身分,並透過加密、訊息鑑別碼與金鑰交換保障傳輸機密性、完整性及來源真實性。民眾登入、查詢個資與上傳文件時,可防止竊聽、篡改與假冒網站。效能上TLS握手與加解密有成本,可採TLS卸載、連線重用與HTTP/2降低延遲。
  • 三、負載平衡器(Load Balancer):位於服務入口,依第四層IP/port或第七層URL、cookie將請求分配至多台應用伺服器,並以健康檢查剔除故障節點,支援加權、最少連線與工作階段持續性。效能上可水平擴充、避免單台熱點;可用性上消除單點故障並支援滾動更新;安全上可集中TLS卸載、網頁應用程式防火牆(WAF)與連線限速。
  • 四、內容傳遞網路(CDN):將表單、操作手冊、圖片等靜態內容快取於各地邊緣節點,使用者由最近節點取得,降低延遲與骨幹頻寬;動態申辦與個資查詢則以動態加速及連線最佳化處理。報稅或補助申請尖峰時可吸收突發流量、減輕原站負載,並過濾惡意流量以緩解分散式阻斷服務(DDoS)。快取須設定存活時間(TTL)與清除機制,敏感資料不得快取。

第3題

某政府機關設計「大學生住房補貼申請系統」,提供在外租屋的大學生申 請住房補貼。請設計SQL 建立資料庫HousingSubsidy 資料表,包含下 列欄位:申請編號(ApplyID,整數)、學生姓名(StudentName,變動字 元)、租屋縣市(RentCity,變動字元)、月租金(MonthlyRent,整數)、 手機號碼(Phone,變動字元)、申請年度(ApplyYear,整數)、審核狀 態(ReviewStatus,變動字元),並設定ApplyID 為主鍵。若此住房補貼 系統同時有大量學生進行申請、修改與查詢資料,請說明資料庫管理系 統(DBMS)中的「交易(Transaction)」與「備份(Backup)」功能之重 要性。另外,請填寫(I)~(VI)空格,使下列SQL 能正確完成:⑴查詢「高 雄市」且「已核准」之住房補貼申請資料,統計各申請年度的總月租金, 並依總月租金由大到小排序;⑵將學生姓名為「王小明」,申請年度為 2026 年,其手機號碼變更為0988123456;⑶刪除「申請年度為2026 年, 且審核狀態為未送出」的申請紀錄。(25 分) SELECT ApplyYear, (I) AS TotalRent FROM HousingSubsidy WHERE RentCity = '高雄市' AND ReviewStatus = '已核准' (II) ApplyYear (III) TotalRent > 10000 (IV) TotalRent DESC; (V) HousingSubsidy SET Phone = '0988123456' WHERE StudentName = '王小明' AND ApplyYear = 2026; (VI) FROM HousingSubsidy WHERE ApplyYear = 2026 AND ReviewStatus = '未送出';

參考解答(AI 生成,非官方)

  • 一、建表:CREATE TABLE HousingSubsidy(ApplyID INT PRIMARY KEY, StudentName VARCHAR(50), RentCity VARCHAR(20), MonthlyRent INT, Phone VARCHAR(15), ApplyYear INT, ReviewStatus VARCHAR(20)); 整數欄位採INT、變動字元採VARCHAR,並以ApplyID為主鍵;長度與NOT NULL、CHECK等限制可依實際需求增補。
  • 二、第⑴題:(I) SUM(MonthlyRent)、(II) GROUP BY、(III) HAVING、(IV) ORDER BY。WHERE先篩選高雄市且已核准的資料列,GROUP BY依ApplyYear分組,HAVING篩選各年度總月租金大於10000的群組,ORDER BY TotalRent DESC由大到小排序。部分DBMS允許HAVING使用別名,標準SQL宜寫HAVING SUM(MonthlyRent)>10000以確保可攜性。
  • 三、第⑵、⑶題:(V) UPDATE、(VI) DELETE。更新時SET Phone='0988123456',條件為StudentName='王小明'且ApplyYear=2026;刪除時DELETE FROM HousingSubsidy,條件為ApplyYear=2026且ReviewStatus='未送出'。執行前宜先SELECT確認影響筆數,並包在交易中,避免同名或同年度多筆資料遭誤改、誤刪。
  • 四、交易(Transaction):交易是不可分割的邏輯工作單位,須具備原子性、一致性、隔離性與持久性(ACID)。大量學生同時申請、修改與查詢時,交易可確保更新全部成功或全部回滾,並透過鎖定、多版本併發控制(MVCC)與隔離等級避免髒讀、不可重複讀、幻讀及更新遺失,維持審核狀態與租金資料一致。
  • 五、備份(Backup):備份提供資料毀損、誤刪、勒索軟體或硬體故障後的復原基礎。實務上採完整、差異與增量備份並搭配交易紀錄(transaction log),以達成復原點目標(RPO)與復原時間目標(RTO);並依3-2-1原則異地保存、加密與定期還原演練。備份與交易日誌相輔相成,才能將資料回復至一致時間點。

第4題

某政府衛生單位設計流感疫情模擬程式,分析不同城市短期內的疫情發 展情況。假設: ⑴初始時已有A 人感染流感。 ⑵目前尚未痊癒之感染者每日會以M%的傳染率產生新增感染個案。 ⑶感染者自感染日起經過X 天後痊癒,痊癒後不再具有傳染力。 ⑷每日新增感染人數取整數部分(無條件捨去)。 ⑸城市若能有效施打疫苗,每日傳染率降低為原本的一半。 下列程式模擬C1 與C2 城市,D 天後仍感染流感的人數,其中C1 城市 未施打疫苗,C2 城市則有效施打疫苗,程式中以newCase[]記錄各日新 增感染人數,其中newCase[0]儲存初始感染人數A,請填入(I)~(V)空 格,使程式能正確模擬。另外,請說明程式中使用陣列newCase[]的功 用,以及simulate()的運作邏輯與功能。(25 分) #include <stdio.h> #define MAXDAY 100 int simulate(int A, double M, int X, int D) { int newCase[MAXDAY] = {0}; int add = 0, current = A; newCase[0] = (I) ; for(int day = 1; day < D; day++) { add = current * M / 100; newCase[day] = (II) ; current = (III) + add; if(day >= (IV) ) { current = current - newCase[ (V) ]; } } return current; } int main() { int A=1000, X=5, D=10; double M =10.0; int C1 = simulate(A, M, X, D); int C2 = simulate(A, M/2.0, X, D); printf("C1:%d, C2:%d\n", C1, C2); return 0; }

參考解答(AI 生成,非官方)

  • 一、空格答案:(I) A、(II) add、(III) current、(IV) X、(V) day - X。newCase[0]須存初始感染人數A;每日先以current×M/100計算新增add並寫入newCase[day],再將current加上add;當day≥X時,減去X天前新增的newCase[day-X],以反映期滿康復者。
  • 二、newCase[]功用:陣列以「日」為索引記錄每日新增感染人數,newCase[0]為初始個案,newCase[d]為第d日新增數。其優點是只需保存每日新增量,即可在X日後依newCase[day-X]扣除康復者,不必逐人儲存感染紀錄;同時可輸出每日新增曲線,記憶體需求為O(D)。
  • 三、simulate()邏輯:先初始化陣列與current=A,再逐日計算add=current×M/100,因add為int而無條件捨去小數;寫入newCase[day]後更新current=current+add,並在day≥X時扣除newCase[day-X]。迴圈結束回傳current,即模擬期末仍感染人數;C1用M、C2用M/2,可比較疫苗降低傳染率的效果。
  • 四、結果判讀:C2的每日傳染率為C1的一半,新增感染較少,經X日康復扣除後,C2的current通常低於C1,顯示有效施打疫苗可降低疫情規模。惟疫苗並非立即治癒,而是降低傳播;當current很小時,整數捨去可能使add為0,使疫情較快歸零,這是離散模擬的特性。
  • 五、限制與建議:MAXDAY固定為100,D須小於100,否則newCase索引越界;M為double但add為int,會持續截斷。模型假設均勻混合、傳染率固定、X日後一定康復,未考慮潛伏期、接觸網絡、移入移出與隨機性。實務上應加入參數驗證、邊界檢查,並以情境分析或隨機模擬補強。