由"in.txt"讀取一串的文字或數字,將其按數字、大寫英文字母、小寫英文字母排序。
出自 程式設計隊訓練教材 NO.9 文數字排序
輸入範例:
DoYouHave1456879DollarsToBorrow
輸出範例:
1456789BDDHTYaaelloooooorrrsuvw
2010年1月29日 星期五
2010年1月28日 星期四
2010/01/28 平均數、眾數
用亂數產生一個含有50個整數的數列,該數列中之各元素值範圍在170到180之間(包含170與180),請由小到大逐一在螢幕上顯示(以10為一組,分列印出),並列印出此數列之平均數、眾數及此眾數出現之次數。
說明:平均數為所有數之總和除以數列之元素各數
眾數則是此數列中,出現次數最多的數(若有兩個以上的眾數,則逐一列出)
出自 程式設計隊訓練教材 NO.14 平均數、眾數
說明:平均數為所有數之總和除以數列之元素各數
眾數則是此數列中,出現次數最多的數(若有兩個以上的眾數,則逐一列出)
出自 程式設計隊訓練教材 NO.14 平均數、眾數
2010年1月27日 星期三
2010年1月26日 星期二
2010/01/26 字串內容
請設計一程式,讀取"in.txt"中A、B兩字串(A長度小於B),並判斷字串A中之所有字元是否依序(不要求相鄰)出現在字串B中(大小寫不分)。
輸入範例:
A=dos
B=Doctor of philosophy
輸出範例:
輸出答案為 是
出自 程式設計隊訓練教材 NO.18 字串內容
輸入範例:
A=dos
B=Doctor of philosophy
輸出範例:
輸出答案為 是
出自 程式設計隊訓練教材 NO.18 字串內容
2010年1月24日 星期日
2010/01/25 門牌號碼
有一個程式設計師住在一條街上,這條街上的房子都在路的同一邊且門牌號碼是從1-2-3-4-....連續下來。有一天晚上他牽著他的狗出門散步,出門之後往左邊走,因為溜狗有點無聊,所以她順便把經過的房子的門牌號碼都加起來。隔天晚上他又出門溜狗,但這一次她往右走並且也把經過的門牌號碼加起來。讓他很驚訝的是:這兩次的數字竟然一樣。
當然,這個巧合現象跟這條街共有幾間房子(n),以及他住在第幾間房子(k)有關係。請寫出一個程式找出前十個滿足這樣條件的數對(k,n)。在輸出中有前2個這樣的數對。
每一對數字k,n的長度均為10,向右靠齊。請將檔案輸出至"out.txt"。 ※此題無須"in.txt"
輸出範例:
6 8
35 49
出自 程式設計隊訓練教材 NO.34 門牌號碼
當然,這個巧合現象跟這條街共有幾間房子(n),以及他住在第幾間房子(k)有關係。請寫出一個程式找出前十個滿足這樣條件的數對(k,n)。在輸出中有前2個這樣的數對。
每一對數字k,n的長度均為10,向右靠齊。請將檔案輸出至"out.txt"。 ※此題無須"in.txt"
輸出範例:
6 8
35 49
出自 程式設計隊訓練教材 NO.34 門牌號碼
2010年1月21日 星期四
新知識-函數
Split
用Split可以把字串分成陣列,例:
Private Sub Form_Load()
Label1.Caption = "德 本 立"
A = Split(Label1.Caption)
End Sub
結果:A(0) = "德",A(1) = "本",A(2) = "立"
Private Sub Form_Load()
Label1.Caption = "德,本,立"
A = Split(Label1.Caption, ",")
End Sub
結果:A(0) = "德",A(1) = "本",A(2) = "立"
Private Sub Form_Load()
Label1.Caption = "德本立"
A = Split(Label1.Caption, "")
End Sub
結果:A(0) = "德本立"
Replace
Replace:取代字串
Function Replace(Expression As String, Find As String, Replace As String, [Start As Long = 1], [Count As Long = -1], [Compare As VbCompareMethod = vbBinaryCompare]) As String
取代後的字串=Replace(原字串,要被取代的字串,取代成的字串,[開始搜索位置],[取代的次數],[文字比較的模式])
e.g
Dim strtxt As String
strtxt = "hello"
strtxt = Replace(strtxt, "ll", "AA")
Print strtxt 'heAAo
UCase、LCase
利用Ucase和LCase可以將字串大小寫轉換:
Text1.Text = UCase("abcDEF123") '結果 = "ABCDEF123"
Text1.Text = LCase("abcDEF123") '結果 = "abcdef123"
全形字元則沒有影響
InStr、InStrRev
利用InStr和InStrRev可以搜尋字串位置:
a = InStr("abcdefg", "c") 'a取得傳值,"abcdefg"是搜索範圍,"c"是要被搜尋的字串
Print a '結果a=3,即是"c"在字串中的第三個字完
利用InStrRev,我們還可以倒轉找尋字串
a = InStrRev("acacacacaca", "c") 'a取得傳值,"c"是要被搜尋的字串
Print a '結果a=10,即是"c"在字串中的從後數上第二個字完
如果找不到字串,將會傳回0
Space
這個是用來格空格的函數:
Print "a" & Space(11) & "b" & Space(6) & "c" '結果 = a b c
引用自
http://www.vbex.net/
用Split可以把字串分成陣列,例:
Private Sub Form_Load()
Label1.Caption = "德 本 立"
A = Split(Label1.Caption)
End Sub
結果:A(0) = "德",A(1) = "本",A(2) = "立"
Private Sub Form_Load()
Label1.Caption = "德,本,立"
A = Split(Label1.Caption, ",")
End Sub
結果:A(0) = "德",A(1) = "本",A(2) = "立"
Private Sub Form_Load()
Label1.Caption = "德本立"
A = Split(Label1.Caption, "")
End Sub
結果:A(0) = "德本立"
Replace
Replace:取代字串
Function Replace(Expression As String, Find As String, Replace As String, [Start As Long = 1], [Count As Long = -1], [Compare As VbCompareMethod = vbBinaryCompare]) As String
取代後的字串=Replace(原字串,要被取代的字串,取代成的字串,[開始搜索位置],[取代的次數],[文字比較的模式])
e.g
Dim strtxt As String
strtxt = "hello"
strtxt = Replace(strtxt, "ll", "AA")
Print strtxt 'heAAo
UCase、LCase
利用Ucase和LCase可以將字串大小寫轉換:
Text1.Text = UCase("abcDEF123") '結果 = "ABCDEF123"
Text1.Text = LCase("abcDEF123") '結果 = "abcdef123"
全形字元則沒有影響
InStr、InStrRev
利用InStr和InStrRev可以搜尋字串位置:
a = InStr("abcdefg", "c") 'a取得傳值,"abcdefg"是搜索範圍,"c"是要被搜尋的字串
Print a '結果a=3,即是"c"在字串中的第三個字完
利用InStrRev,我們還可以倒轉找尋字串
a = InStrRev("acacacacaca", "c") 'a取得傳值,"c"是要被搜尋的字串
Print a '結果a=10,即是"c"在字串中的從後數上第二個字完
如果找不到字串,將會傳回0
Space
這個是用來格空格的函數:
Print "a" & Space(11) & "b" & Space(6) & "c" '結果 = a b c
引用自
VB範例網--VB函數
http://www.vbex.net/
2010/01/22 費氏數
由"in.txt"讀取一數字n求出第n個費氏數,費氏數定義如下:
0,當n=0時
f(n)= 1,當n=1時
f(n-1)+f(n-2),當n>=2時
在此列舉一串數列:0、1、1、2、3、5、8、13、21、34、55、89、144、233,這些就是由0<=n<=13所組成的費氏數。
※(0<=n<=1000)
輸入範例:8
輸出範例:21
出自 程式設計試題匯集 p.43 費氏數
0,當n=0時
f(n)= 1,當n=1時
f(n-1)+f(n-2),當n>=2時
在此列舉一串數列:0、1、1、2、3、5、8、13、21、34、55、89、144、233,這些就是由0<=n<=13所組成的費氏數。
※(0<=n<=1000)
輸入範例:8
輸出範例:21
出自 程式設計試題匯集 p.43 費氏數
2010/01/21 菱形數字方塊
是寫一程式讀取"in.txt"之數字印出菱形數字方塊,其形狀是由一群小於該數的數字包圍而成,輸出至"out.txt"‧例如:輸入5則輸出形狀為
1
121
12321
1234321
123454321
1234321
12321
121
1
輸入2則形狀為
1
121
1
※取自程式設計隊 訓練教材 NO.64
1
121
12321
1234321
123454321
1234321
12321
121
1
輸入2則形狀為
1
121
1
※取自程式設計隊 訓練教材 NO.64
2010年1月20日 星期三
2010年1月14日 星期四
第一次儲備選手選拔試卷第七題
Ugly number的定義為:該數之質因數必須為2,3,5的組合(Ugly number的質因數可分解為2^x * 3^y * 5^z ,其中x,y,z為正整數)。當x,y,z皆=0時,為第一個Ugly number,其值為1。
例:1,2,3,4,5,6,8,9,10,12,15,這些就是前11個Ugly number。
請從指定目錄"in.txt"讀取一數字N,求出第N個Ugly number,輸出至指定目錄"out.txt"。
輸入範例:15
輸出範例:24
例:1,2,3,4,5,6,8,9,10,12,15,這些就是前11個Ugly number。
請從指定目錄"in.txt"讀取一數字N,求出第N個Ugly number,輸出至指定目錄"out.txt"。
輸入範例:15
輸出範例:24
第一次儲備選手選拔試卷第六題
從指定目錄"in.txt"讀取一數字N,求N!的結果數值中,從右邊算來第一個不是0的數字,輸出至指定目錄"out.txt"。
( 0 < N < 10000 )
輸入範例:10
輸出範例:8
( 0 < N < 10000 )
輸入範例:10
輸出範例:8
第一次儲備選手選拔試卷第四題
電費計算:從指定目錄"in.txt"讀取一數字作為用電度數計算出電費,輸出至指定目錄"out.txt"。
電費算法為:電錶每月租金30元,用電在40度之內,每度2.2元,40度至100度,每度3元,超過100度,每度3.5元。
輸入範例:80
輸出範例:270
電費算法為:電錶每月租金30元,用電在40度之內,每度2.2元,40度至100度,每度3元,超過100度,每度3.5元。
輸入範例:80
輸出範例:270
第一次儲備選手選拔試卷第三題
計算二數成績的數字個數:從指定目錄"in.txt"讀取二個四位數正整數,相乘的積,計算該數字0到9的數字個數,輸出至指定目錄"out.txt"。
如1255*2100=2635500,結果有0有2個,2有1個,3有1個,5有2個,6有1個。其他個有0個,不用顯示。
輸入範例:1255 2100
輸出範例:02 21 31 52 61
如1255*2100=2635500,結果有0有2個,2有1個,3有1個,5有2個,6有1個。其他個有0個,不用顯示。
輸入範例:1255 2100
輸出範例:02 21 31 52 61
第一次儲備選手選拔試卷第一題
找出最小數字:從指定目錄中的"in.txt",讀入一數字字串,以逗號分隔,找出字串中最小字數。
輸出到指定目錄的"out.txt"。
(讀取指定目錄的in.txt, 請用 open app.path & "\in.txt" for input as #1 )
※今後皆以指定目錄形式完成VB
輸入範例:
26,56,78,99,15,13
輸出範例:
13
輸出到指定目錄的"out.txt"。
(讀取指定目錄的in.txt, 請用 open app.path & "\in.txt" for input as #1 )
※今後皆以指定目錄形式完成VB
輸入範例:
26,56,78,99,15,13
輸出範例:
13
訂閱:
文章 (Atom)