105年 捷運招考 北捷新進人員 助理工程員(資訊類) 程式設計 試卷

pdf
165.16 KB
6 頁
侵權投訴
加載中. ..
PDF
臺北捷運公司 105 11 27 日新進助理工程員(資訊類)
甄試試題-程式設計
1 頁,共 6
注意: 請務必填寫姓名:
1.以下題目應全部作答。 應考編號:
2.科目總分為 100 分。
3.作答時不須抄題目,但請標明題號,並請用藍(黑)色原子筆橫向書寫。
題目:
軟體發展方法已逐漸從傳統的瀑布模型(waterfall model)或結構化
發展轉向物件導向(object oriented)分析設計以及敏捷式開發方
法,請簡要回答以下有關技術與特性(每題 5 分,共 10 分)
1. 物件導向模型
() 1是物件導向分析設計常用的塑模工具(modeling tool
請問其名稱為何?目的為何?
()圖中 Publisher Stock 之間三角形實線的意義為何?
Subscriber Investor 之間的三角形虛線意義為何?Publisher
StockAgent 之間的箭頭虛線的意義為何?
{abstract}
Publisher
-subscriberList
+addSubscriber(Subscriber)
+delSubscriber(Subscriber)
+notifySubscribers()
+String getData()
<<interface>>
Subscriber
+update()
Investor
-name
+u
p
date
()
StockAgent
-news
+String getData()
Stock
-name
-news
+String getData()
臺北捷運公司 105 11 27 日新進助理工程員(資訊類)
甄試試題-程式設計
2 頁,共 6
網頁程式設計(JavaScript)(1~7 4 8 2 30 分)
填寫以下html網頁和JavaScript程式碼空格處(1) ~ (8)完成下面功
能。
() 2-1,為一個html網頁,第一行有兩個元件第一個是標籤(label)
顯示為"Account:",第二個是文字區(text field),可以讓使用者填入文
字。第二行有兩個元件第一個是標籤(label),顯示為"Balance:",第
二個是文字區(text field)可以讓使用者填入文字但填入文字會被隱
藏如圖2-1第三行有五個元件第一個是檢查按鈕(check button),第
二個是標籤(label),顯示為"VIP",第三個是檢查按鈕(check button)
第四個是標籤(label),顯示為"Enterprise"。第五個是按鈕(button),上
面顯示的文字是"Ok"
2-1. Html 網頁 2-2. 錯誤訊息一
2-3. 錯誤訊息二 2-4. 提示訊息
臺北捷運公司 105 11 27 日新進助理工程員(資訊類)
甄試試題-程式設計
3 頁,共 6
() Account欄位的輸入若沒有以&apos;a&apos;&apos;b&apos;值開頭則按下"Ok"會跳出Invalid
Account息,如2-2Balance欄位的輸入值的長度小於3,則
按下"Ok"會跳出Invalid Balance視窗訊息,如圖2-3Balance欄位的輸
入,若為數字,則會跳出"10*輸入數字"的值,如圖2-4
<html><head>
<title>Exam</title>
<script language=javascript>
function checkString(s1,s2) {
if ( (1) ) {
alert(" (2) ");
return false;
}
if ( (3) ) {
alert("Invalid Balance");
return false;
}
if ( (4) (s2)) {
alert(10*eval(s2));
return false;
}
}
</script></head>
<BODY TEXT=#FFFFFF BGCOLOR=#000000>
<form action = Login method=POST name=FORM1>
Account: <input type = (5) name = name><br>
Balance: <input type = (6) name = passwd><br>
<input (7) name="C1" value="ON" checked>VIP
<input (8) name="C2" value="ON">Enterprise
<input type = submit onClick="return
checkString(FORM1.name.value, FORM1.passwd.value);"
style=width:60 value =Ok>
</form></body></html>
臺北捷運公司 105 11 27 日新進助理工程員(資訊類)
甄試試題-程式設計
4 頁,共 6
三、網頁程式設計(C#)(1~5 4 分,6~8 5 分,共 35 分)
填寫以下C#程式碼空格處(1) ~ (8),使執行結果為
4
1621
1 3 5 7 9
其中 transform10X 功能為將 based 進位制的數值 x,轉成 10 進位制。
namespace ConsoleApplication3 {
abstract public class Number {
public int count(int x, int y) {
if (x _(1)_ y) return 0;
else return count(x - 1, y) + 1;
}
_(2)_ public void dispatch() {
System.Console.WriteLine("Based");
}
_(3)_ public int transform10X(int based, int x);
}
public class Transfer {
public int transform 10X(int based, int x) {
int index = 1, ans = 0;
while (x > _(4) _) {
ans = ans + index * (x % based);
x = x / _(5) _;
index = index * 10;
}
return ans;
}
}
public class DecimailNumber: Number {
private Transfer tr;
_(6) _ DecimailNumber() {
tr = new Transfer();
}
public _(7) _ int transform10X(int based, int x) {
return tr.transform10X(based, x);
}
private void compute(int a, int[] b) {
臺北捷運公司 105 11 27 日新進助理工程員(資訊類)
甄試試題-程式設計
5 頁,共 6
for (int i=a; i>=0; i--) {
b[i] = 1 + 2*i;
}
}
private void output(int [] r, int n) {
for (int i=0; i<n; i++) {
System.Console.Write(r[i]+" ");
}
}
public override _(8) _ dispatch() {
int [] data ={5, 4, 3, 2, 1};
int [] r={0, 1, 2, 3, 4};
compute(data[r[0]+r[1]], r);
output(r, 5);
}
}
class Program {
static void Main(string[] args) {
Number d = new DecimailNumber();
System.Console.WriteLine(d.count(7,3));
System.Console.WriteLine(d.transform10X(9, 1234));
d.dispatch();
}
}
}
臺北捷運公司 105 11 27 日新進助理工程員(資訊類)
甄試試題-程式設計
6 頁,共 6
四、SQL 語言與資料庫應用(共 25 分)
某公司專案管理系統中,公司有許多專案(Project)與部門(Department)。每
一個部門有許多員工(Employee)。每一個專案有一位專案經理(Manager)
專案成員是由各部門調派組成部門有部門編號(id)、部(name)。專
案有專案編號(id)、專案名稱(name)、專案經理的員工編號(manager_id)
員工有員工編號(id)、姓名(name)、所參與專案編號(project_id)、所參與專
案的角色(job_title)、部(department_id)、年(age)其資料庫設計如
下:
Department (id char(10), name char(12))
Project (id char(10), name char(12), manager_id char(10))
Employee (id char(10), name char(12), project_id char(10), job_title char(12),
department_id char(10), age Integer)
() 請說明何謂資料庫第一正規化(1NF),以上設計是否符合 1NF(5 )
() 請針對以下問題撰寫 SQL 指令。(20 )
(1) 造出一個資料表 Employee
(2) 刪除部門為 Sale 的所有員工資料。
(3) 加入一筆新的員工資料進入資料庫。
(&apos;0006&apos;, &apos;Kevin&apos;, &apos;002&apos;, &apos;Programmer&apos;, &apos;003&apos;, 36);
(4) 更新所有員工在專案中擔任 programmer 角色,改為 developer
收藏 ⬇️ 下載