109年 地方特考 三等 資訊處理 程式設計 試卷

pdf
108.77 KB
2 頁
windows10
侵權投訴
加載中. ..
PDF
109年特種考試地方政府公務人員考試試題
等 別
:
三等考試
類 科
:
資訊處理
科 目
:
程式設計
考試時間
:
2
小時
座號
:
※注意:禁止使用電子計算器。
不必抄題,作答時請將試題題號及答案依照順序寫在試卷上,於本試題上作答者,不予計分。
本科目除專門名詞或數理公式外,應使用本國文字作答。
代號:
34560
頁次:
2
-
1
一、請使用 Java、C#、C++或Python 等物件導向程式語言,建立矩陣相關
運算的系統,系統一共有三個類別,分別為抽象類別 Matrix,實作類別
MatrixMultiply 及MatrixAdd,其中:(30分)
*抽象類別 Matrix 中所有的變數跟方法皆為 protected,主要包含了:
.matrix1, matrix2, resultM 三個實數值二維 matrices 資料
.一個抽象的 checkDimension( )方法,用來檢查 matrix1跟matrix2是
否適合做所指定的運算
.一個抽象的matrixOperation()方法,用來對 matrix1跟matrix2進行運算
.一個 setMatrix()方法,可以將所傳入的兩個 matrices 複製到 matrix1,
matrix2
.改寫物件的 toString()方法,可以顯示 matrix1, matrix2及resultM 的
內容
*類別 MatrixMultiply,繼承類別 Matrix:
.實作 Matrix 中的兩個抽象方法,分別可以實現父類別內 matrix1及
matrix2進行乘法時的維度檢查及乘法運算,進行運算前會主動呼叫
checkDimension(),確定是否可以進行相關運算,如無法運算,
resultM 會被設定為 null 並回傳,否則進行運算,結果存於父類別的
resultM 並回傳
.一個空建構子及一個可以接受兩個二維 matrices 的建構子,建構子
中呼叫父類別的 setMatrix()方法,設定 matrix1及matrix2(空建構
子會將 matrix1及matrix2設為 null)
*類別 MatrixAdd,同 MatrixMultiply,僅實作抽象方法時,是以 matrices
加法為對象,進行維度的檢查及運算
二、請使用 Java、C、C++、C#或Python,分別使用 iterative 跟recursive 方
法,撰寫二元搜尋法,搜尋已排序的整數值數列。(20分)
註:假設數列資料是以具有 array 性質的 list 來存放
*模組程式應能接受欲搜尋的資料及已排序數列的相關資料
*模組程式應回傳所欲搜尋的資料是否在數列資料中
代號:
34560
頁次:
2
-
2
三、請使用 Java、C、C++、C#或Python 撰寫相關程式模組,使用 stack(先
進後出的線性資料結構)來完成 preorder 的深度優先(Depth First Search)
樹狀圖追蹤(traversal)。(25分)
註:假設樹狀圖的節點資料可以為任意型別
註:假設樹狀圖的節點結構內含三個全域變數:資料、父節點、所有子
節點串接的 linked list
*模組程式應能接受樹狀圖的樹根
*模組程式應以字串數列方式,回傳樹狀圖追蹤的結果(以空白、逗號
或換行符號區隔資料字串)
*樹狀圖中的節點需另以獨立的 class 定義節點資料、相關的建構子
(Constructor)與存取子(Accessor/Mutator)
四、請使用 Java、C、C++、C#或Python 撰寫相關模組程式,可以找出某一
整數的所有 generator(s)。(25分)
digit-sum:正整數 N的digit-sum 定義為「該正整數本身跟構成該整數個
別數字的總和」,如245的digit-sum 為256,因為245+2+4+5等於256
generator:正整數 M是正整數 N的digit-sum 時,則 N為M的generator
如245是256的generator
如1979是2005的generator,因為1979+1+9+7+9等於2005
如198及207皆是216的generator,而198是216最小的 generator
*模組程式應能接受使用者由標準輸入裝置所輸入的資料
*模組程式中應控制使用者輸入資料的正確性與合法性,如輸入資料非
正整數,程式應顯示輸入資料不正確的訊息,然後結束程式
*輸入資料無誤,執行程式後,應顯示該輸入資料的所有 generator(s)
收藏 ⬇️ 下載