【測驗M19】94商業類科學生技藝競賽模擬試題
[回前頁]
Problem 1、(程式設計分組,14分)
共有n個學校派學生參加程式設計比賽,主辦單位擬將所有參賽學生分成若干組進行初賽,分組原則:每一所學校的參賽學生必須被平均分派到各組,且分組的組數必須為最多。請設計一個程式,可依據各校參賽的學生人數,決定初賽最多可分成幾組比賽。(輸出結果的組數若非最多,則本題算錯,零分計算。)
輸入說明:輸入第一列為參賽的學校數n (n介於2~50)。
輸入第二列到第 n+1列分別為各校的參賽學生人數(每列的輸入值介於2~100)。
輸入範例:有3所學校派學生參加程式設計比賽,每一所學校的參賽學生分別有:8人、12人、48人。實際輸入之檔案內容如下:
實際輸入:(test1.txt)
3
8
12
48
輸出說明:輸出結果為分組的組數。
輸出範例:上例中有3所學校各派學生8人、12人、48人參加程式設計比賽,故最多可分成4組,每一組可有第一個學校2人,第二個學校3人,第三個學校12人。實際輸出之檔案內容如下:
實際輸出:(result1.txt)
4
Problem 2、(購買花朵,10分)
鬱金香一朵50元、香水百合一朵10元、白玫瑰一朵5元、滿天星一朵1元,現王先生有一筆金額N
(0<n<100),請設計一程式,計算出此金額若全部用完,能買到的花朵數。(買到的花朵數必須為最少,花朵數若非最少,則本題算錯,零分計算。)
輸入說明:輸入金額n。
輸入範例:假定王先生有 78元。實際輸入之檔案內容如下:
實際輸入:(test2.txt)
78
輸出說明:第一列為花朵總數。第二列到第五列分別為鬱金香、香水百合、白玫瑰、滿天星的花朵數。
輸出範例:上例中王先生有
78元,能買到最少的花朵數分別為鬱金香1朵、香水百合2朵白、玫瑰1朵、滿天星3朵。實際輸出之檔案內容如下:
實際輸出:(result2.txt)
7
1
2
1
3
Problem3、(連分數,13分)
有一個三層的連分數形式如下。請寫一程式,輸入
、
、
、
、
、
,輸出該連分數的值。
輸入說明:第一列為
、
,第二列為
、
,第三列為
、
。
輸入範例: 假定
、
、
、
、
、
的輸入值如下:

實際輸入之檔案內容如下:
實際輸入:(test3.txt)
3 2
1 4
1 2
輸出說明:輸出結果為該連分數的分子及分母值。
輸出範例:以下為分數的求解過程

實際輸出之檔案內容如下:
實際輸出:(result3.txt)
27 20
Problem 4、(最小離差,16分)
有n個同學(n為偶數),兩人一組,共分成
n/2組。令n/2個同學之體重總和為{S1,S2,……Sn},m為體重總和之平均值m=[(
)/n],分組的原則為必須使得
m|之差距總合為最小。(輸出結果的差距若非為最小,則本題算錯,零分計算。)寫一程式完成此分組工作。
輸入說明:第一列為學生人數n,(4≦n≦20)。
第二列到第n+1列為學生的體重。(30≦學生的體重≦150)
輸入範例:假定有10個同學,其體重分別為:82、53、74、84、45、46、57、67、43、47。實際輸入之檔案內容如下:
實際輸入:(test4.txt)
10
82
53
74
84
45
46
57
67
43
47
輸出說明:列印出每組同學之體重總和及個別體重,且必須依體重總和由大而小印出。
輸出範例:上例中的10個同學體重分別為:82、53、74、84、45、46、57、67、43、47。其各組體重總和及個別體重的實際輸出之檔案內容如下:
實際輸出:(result4.txt)
127 = 43 + 84
127 = 45 + 82
120 = 46 + 74
114 = 47 + 67
110 = 53 + 57
Problem 5、(字串處理,12分)
輸入一段字串(String),請寫出一個程式,計算此字串中阿拉伯數的字元有幾個?
輸入說明:一個任意字串。(字串長度介於1到100個字元)
輸入範例:假定入字串為:a9sj2k13ckdi7。實際輸入之檔案內容如下:
實際輸入:(test5.txt)
a9sj2k13ckdi7
輸出說明:輸出輸入字串中阿拉伯數字的個數。
輸出範例:上例中的字串a9sj2k13ckdi7有5個阿拉伯數的字元,分別為9、2、1、3、7。實際輸出之檔案內容如下:
輸出格式: (result5.txt)
5
Problem 6、(相關係數,18分)
有n對父、子的身高資料,已知父親身高 (
)與兒子身高(
)有相關性,相關性可用相關係數(
r )來決定,r的公式如下。請寫一個程式可計算其相關係數。 SHAPE \* MERGEFORMAT
例如:有五對父子的身高如下:
, 

輸入說明:第一列為父、子的組數n,(n介於5~10)。
第二列至第n+1列為父與子的身高。
輸入範例:假定有5組父、子的身高資料,分別為:(160,165)、(175,180)、(170,173)、(174,178)、(165,171)。實際輸入之檔案內容如下:
實際輸入:(test6.txt)
5
160 165
175 180
170 173
174 178
165 171
輸出說明:輸出相關係數r,(取至小數第三位,即第四位四捨五入)。
輸出範例:上例中5對父、子身高的相關係數為0.984。實際輸出之檔案內容如下:
實際輸出:(result6.txt)
0.984
Problem 7、(基數排序,17分)
將一組資料由小而大或由大而小排序式是資料處理中很重要的工作。有一種排序方法稱為基數排序,它的做法是先排數值的個位數,接著排十位數、百位數,千位數、、、。寫一個程式輸入n
筆的數值,並輸出其排序過程。
輸入說明:第一列為數值個數n,(n介於2~10)。
第二列至第n+1列為各數值。(每個數值最多為三位數)
輸入範例:假定有5筆數值分別為:858、792、459、574、762。實際輸入之檔案內容如下:
實際輸入:(test7.txt)
5
858
792
459
574
762
輸出說明:第一列為未排序前的數值次序。
第二列起為各階段排序的數值次序。
輸出範例:上例中5筆數值的各階段排序的數值次序如下:
未排序前:
858、792、459、574、762
第一次依個位數排序結果:
792、762、574、858、459
第二次依十位數排序結果:
858、459、762、574、792
第三次依佰位數排序結果:
459、574、762、792、858
實際輸出:(result7.txt)
858、792、459、574、762
792、762、574、858、459
858、459、762、574、792
459、574、762、792、858