Expression Blend的Data面板中有個非常有趣的項目,就叫做+XML
我和我的好朋友、寶貝學生互動及學習使用Blogger的地方。
<Canvas>
<MediaElement x:Name="mediaElem1"
Source="file:///c:/windows/media/tada.wav"
LoadedBehavior="Manual" />
<MediaElement x:Name="mediaElem2"
Source="file:///c:/windows/media/Windows Logoff Sound.wav"
LoadedBehavior="Manual" />
</Canvas>
On this page you will find dozens of videos designed for all Visual Basic developers, from the novice to the professional. New videos are added regularly, so check back often.
'Excel的自動計時器,設定每2秒重算1次
Sub Test1()
myTimer (2)
End Sub
Sub myTimer(secN)
Dim StartTime As Single
Do While True
StartTime = Timer
Do While Timer < StartTime + secN
DoEvents
Loop
SendKeys "{F9}", True
Loop
End Sub
寫程式要克服兩種困難:附屬性(accidental)的困難是因為用的編程工具不對才會難,而本質上困難的東西是沒有任何工具或語言能解決的
「超越Java:探討程式語言的未來」書評 - The Joel on Software Translation Project
有頭腦,並且能完成工作 (Smart, and Gets Things Done.)
The Joel on Software Translation Project:軟體人員面試教戰守則 - The Joel on Software Translation Project
第七章 STATISTICA VISUAL BASIC
符合企業規格標準之STATISTICA Visual Basic 語言(整合至STATISTICA 中),提供使用者另一個界面,使用STATISTICA 全功能,而且並不僅如“補充應用環境程序語言”般,更提供使用者編寫語言,擴充需求。STATISTICA Visual Basic提供STATISTICA 內部物件模式結構的優點,而且可以透過語言的編寫,連結STATISTICA 詳細的功能特質,即使是最複雜的分析與圖表,也可以記錄於Visual Basic巨集中,供往後重覆使用;或者,也可以用於編輯至其他應用程式的部份架構內。STATISTICA Visual Basic新增超過10,000個新的函數,用於標準Microsoft Visual Basic的廣泛語法上,其中包含著發展環境在內。
詳見:http://www.statsoft.com.tw/support/onlinetech/onlinetech_ch7.htm
譯自
http://www2.biglobe.ne.jp/~oni_page/other/etc/pr03.html
http://mixi.jp/view_community.pl?id=1772737
(版本2 2008/10/12更新)
譯註
SE是日本軟體公司裡程式設計師的頭子。自己不太寫程式,
主要工作是跟客戶確認規格。
程式設計師多半自己不面對客戶。
跟PM又不一樣。(有什麼比較貼切的職稱翻譯嗎?)
—————
1
每天有24小時。
所謂的「今天之內」,是指到明天早上為止。
2
程式不會照自己所想的跑。只會照所寫的跑。
3
需求規格在程式寫完後才會敲定。
基本規格要客戶看到成品後才會決定。
詳細規格要使用者用過後才會確定。
4
我對軟體設計的方式導出的結論,有兩種方式。
一是把軟體設計得單純到很明顯不會有缺陷,
不然就是把軟體設計得複雜到沒有明顯的缺陷。
- C.A.R.Hoare
5
程式碼不要在開發現場寫! 去客戶那寫!
除錯不要在期限前做! 上線後再做!
6
畫面藍了。
7
先說「沒辦法」的人贏。
8
有意見的話你寫
9
要殺一個程式設計師不需要刀,改三次規格就好
10
首先要先懷疑別人,被懷疑的人或許會把問題解決掉。
(註:通常會「先懷疑自己」)
11
開發沒有終點。只有釋出(release)。
12
無論規格多晚才能確定,結案期限永遠不會變。
這是所謂的「期限守恆定理」。
13
客戶總是覺得水跟追加需求是不用錢的。
14
付錢愈計較的客人愈囉唆。
15
在排定開發行程時,總是視而不見一些連小學生都會的算數。
業務部門總是一堆不知道1+1=2的人。
16
一個人掛了大家都掛了。
17
bug過了一晚可能就變成規格了。
18
好的規格找一個天才不如找三個凡人。
爛的規格找一百個凡人不如找一個天才。
19
客製軟體中30%的價格用在確認規格上。
30%用在修改規格上。
30%用在找bug。
結果初期規格反映在價格上占的比例只有10%。
20
對客戶來說SE是部下,程式設計師是家畜。
對SE來說客人是錢,對程式設計師來說顧客是看不見的病毒。
除了弄完程式以外,沒有其他驅除的辦法。
21
顧客想受SE喜歡,要自己了解到系統開發需要時間與金錢,早點確定規格。
SE想受顧客喜歡,則要讓程式設計師討厭自己。
22
很多SE跟程式設計師都暗自想著有錢有閒的話什麼系統都想自己動手做,
不過都沒這種機會。
23
品質的劣化程度依規格改變的次數與規模而定。
24
業務是認為空想能夠實現的夢想家。
SE則是深信任何障礙都能突破的冒險家。
程式設計師則是被夢想家和冒險家拋到漆黑海裡的漂流者。
25
有才能的程式設計師第一次看到設計細節時,要先理解程式的目的。
接下來要設法讓SE了解到以指定的方法、工時並無法完成這個工作。
26
程式是運氣與直覺堆砌而成的奇蹟。
若不具備這兩者,不可能以這樣的工時實現這樣的規格。
修改規格是對奇蹟吐槽的褻瀆行為。
而追加修改則是相信奇蹟還會重現的無謀行動。
27
程式設計師聽了「把自己當作顧客去著想!」而開始思考。
啊,像夢一樣。
28
對於因為興趣而寫程式的人來說,所謂的技術是程式語言能力。
對於因為工作而寫程式的人來說,所謂的技術是邏輯思考能力與人際溝通能力。
程式語言可以看著手冊溝通,客戶不行。
29
程式系統在交貨之前會不斷縮小。
先用元件定義取悅老闆。
再拿經費概算要部長妥協現實的方案。
在運用會議中,課長會嘗試減少自己責任範圍。
在細節會議中,負責人會把範圍縮到自己記得的部分。
30
SE需要持久力,程式設計師需要爆發力。
31
準時離開公司,工作會變多。
32
完美的程式需要完美的時間與金錢。
聽說揮霍著美國的國家預算的NASA,也覺得時間跟錢不夠。
33
詳細設計要在程式碼的註解裡做完。
註解是唯一的自衛手段,至少要讓自己看懂。
34
還有時間看程式碼的話就執行他。
CPU跑得比腦細胞快。至少這時候可以休息。
35
程式的異常該稱為「bug」還是「規格上的限制」是看期限還剩多久決定的。
36
所謂便服日,好像社會上把他叫做假日
(註) 日本有些公司會有所謂便服日(不用穿西裝的日子),通常是星期五,但…
37
地獄持續一段時間後,充滿殺氣的怒吼會變多。
再持續一段時間,說話會變少但牢騷會變多,壟罩在凝重的氣氛裡。
再持續下去,反而會海闊天空,四周洋溢充滿活力的聲音。
這種狀態稱為「Programmer’s High」,也是倒下來的人開始出現的時候。
38
遠處的火災一定燒到這裡。
39
禱告,然後跑吧。
40
程式不是用腦記的,要用身體記住。
41
明天能放假的話死了也罷。
42
外面有下雨耶,昨天開始下的嗎?
43
若不能心靜不移,身體會掛。
若不讓自己殘忍,自己會被殺。
44
客戶會說謊,業務會作夢,SE會做白日夢。
程式設計師則惦惦。(愈來愈自言自語)
45
(日文文字遊戲)
SE總是不負責的說「別逞強」,
業務總是無理取鬧不准說「沒辦法」。
46
規格書就像航海圖,客戶則是洋流。洋流陰晴不定,航海圖就變垃圾。
程式設計師必須在沒有航海圖的海上憑自己的力量找到大陸。
47
再嘮嘮叨叨下去也是要付錢的。
48
多想個10秒鐘,你可以不說「嗯,這個做得到」。
49
人是無法從別人失敗記取教訓的動物。
砍成本、改規格、加需求、趕上線,從來沒有人從眾多失敗中記取教訓。
50
老手用來提振精神的魔法格言:
「不過比起以前來說算是…」
新人用來提起幹勁的魔法格言:
「把這件工作做完的話…」他們還不知道工作是沒有終點的。
51
所謂交案期限,是指開發現場從公司換到客戶那裡的日子。
52
程式、SE、經理不是職務。是逃不掉的責任。
53
業務是最難搞的客戶。
54
能夠迅速想到解法的程式設計師太多了。
他們能用一分鐘想到方法,用一天去寫程式。
不需要花一小時想到解法,再用一小時去寫程式。
- Jon Bentley
55
漂亮的規格,可以從沒有bug出現看出來。
明明爛的就是設計,為什麼是這樣…
56
上線後的除錯才叫做bug。
57
追加需求確定後交貨期限就無法確定,
交貨期限確定後追加需求就無法確定。
這稱為「追加需求與交貨期限的測不準原理」。
58
除三個錯就會冒出一個錯。
這稱為bug的無窮迴圈。
59
不祥的預感總會實現。
不過程式設計師不會去煩惱不祥的預感,那是SE的工作。
60
要解決地獄的辦法,就是客戶把錢交出來。
61
不懂電腦的操作者是發現bug的天才。而且無法重現。
62
每次開會就更改規格的客戶,
他的操作手冊要等到操作寫好的程式後才能寫出來。
63
搞不懂的時候,Currency(長整數)比Interger(整數)好用。
Variant(字串、數字都能存的萬能變數)又比Currency(長整數)好用。
安全第一。
(VB程式設計師如是說)
64
啊,那是微軟的規格。
65
程式設計師所不滿的規格也一定會讓客戶不滿。
(這是說程式設計師覺得難寫的地方常常是SE溝通有落差)
66
程式設計師需要的技能,
包括交涉、時程管理、業務分析、提案、設計、程式語言、架構、維護、使用。
SE需要的技能則減掉程式語言、架構、維護與使用。
專案經理需要的能力則再減掉業務分析、提案與設計。
業務需要的能力再扣掉時程管理。
67
正因為健康,才能做不健康的事。
68
規、規格、是規格啦。不過有一點跟規格不太一樣啦。
69
那是你說的規格。
70
開發室沒有窗戶,那是因為以前…
71
爛了也是因為規格。
72
SE: 真沒辦法。
PG: 也沒註解。
(碰到不知道是誰寫的程式,大家都束手無策的狀態)
73
為什麼你不能兩三下解決掉他啦。
因為之前兩三下搞定的東西也被你兩三下就否定了。
74
不會動的bug就只是普通的bug。(會動的bug則能視為規格)
75
今天好好清理bug,bug應該死光了吧。
咦?Windows也死了唷。
76
客戶不會去想最壞的情況。要他面對最壞的情況,他會認為是漫天開價。
SE則會顧慮最壞的情況,準備應付最壞的情況。
程式設計師比誰都早預料到最壞的情況,而無視最壞的情況。
77
唯一不產生bug的方法,就是不寫程式。
第二好的方法,就是在時程跟人員確定之後的每次改規格,都重新檢視過整個專案。
78
共同責任是程式設計師的責任。
管理職?那是啥?好吃嗎?我沒吃過耶。
79
如果可以改行的話,想找個準時下班不叫「逃跑」的工作。
80
對職業程式設計師來說,漂亮的程式是單純而自然的邏輯、簡單而基本的指令、豐富的註
解,
也就是新手程式設計師也能馬上動手改的程式。
而要寫出這樣的程式,需要單純、簡單、美麗的規格。
但可惜客人總是喜歡搞很複雜。
81
設計者應該是不該要求製作者製作出超過設計以上內容的吧…
82
無論是做的比規格書裡的多,還是只照規格書裡的寫,SE都會找程式設計師的碴。
所以程式設計師只做規格書裡的寫的內容。
83
SE對程式設計師說的「常識」每三小時變一次。
84
自己看規格書。不能跑的是規格。
85
「沒辦法」是要看把一天當多少小時來算。
一天常常指的是3人日,一個月常常是指4.5人月喔。
86
工時要減掉一半的單體測試與一半的系統測試,
而交貨期則要另外加上上線後的兩個月。
87
能拿到錢的規格變更稱為「受理項目」,
拿不到錢的規格變更則稱為「SE的規格確認失誤」。
程式設計師是這麼看的。
88
累了。我想睡了。可以回家嗎。
(累了吧,我也累了。好累喔怎麼了。反正就是規格啦,管他的)
89
試圖降低成本的話,為了配合預算,品質會下降,不過漫天開價做出來的品質也不見得好
到哪裡去。
90
REDO到底該怎麼唸一直搞不懂。是利斗嗎、李度嗎、R E D O嗎,難道是 red 零 嗎? 拜
託加上注音吧。
(譯註:我比較煩惱 Linux)
91
有人在程式碼註解裡寫日記。像「今天是雨天…」,「想回家…」之類的。甚至還有「修
改日: 2003/10/10 不能同意你更多」這種註解出現。說到這個,好像也看過「吃大便」
這樣的註解。
92
小學生時第一次看到電腦
國中時第一次學會怎麼用
高中與大學學會程式語言
出社會後才發現自己走錯路
93
「不要讓老闆當業務比較好」
94
說來說去,要去研究根本不知道為什麼會動的東西為什麼不會動了,找拿破崙來也沒搞頭
。
————————
ex 1
就算程式裡沒bug,編譯器會有bug。
就算編譯器沒bug,OS會有bug。
就算一切都沒bug,客戶會決定什麼是bug。
ex 2
規格與規格書是不同的東西。
ex 3
比期限更重要的是靈感與睡眠。
ex 4
比知識與經驗重要的是手冊與時間。
ex 5
能動就好了,能動的話…
ex 6
過了三天就是別人寫的程式碼。
ex 7 (大搜查線系列)
規格變動不是在會議室裡發生的!是在現場發生的!
ex 8 (大搜查線系列)
異常不是在模擬測試時發生的!是上線後才會發生的!
ex 9
漂亮的設計三天或許就膩了
骯髒的設計三天就習慣了
ex 10
bug與規格是一體兩面
ex 11
電腦裡沒有bug,bug常在人心。
ex 12
無論怎麼檢查,不管怎麼確認,上線前一晚就是睡不著。(RFC968)
ex 13
估價需要1%的經驗與99%的直覺
ex 14
沒有什麼事情比直接讓找不到任何bug的程式直接上線還要可怕的了。
ex 15
『程式設計師』=能將SE條理不通的說明翻譯成程式碼的高手
『SE』=與客戶討論改寫規格書、與程式設計師討論後再改寫規格書,程式出貨後還要
繼續改寫規格書的人
『PM』=每天修改自己定下的行程表的人
『業界老鳥』=臉色蒼白缺乏表情的人
『外包』=幫不會寫程式的正職員工寫程式的人
『coding』=複製貼上的工作
『單體測試』=指開始寫程式
『除錯』=把程式碼註解掉的工作
『新同事』=在火燒屁股的專案火上加油的人
『出貨日』=把只完成一半的系統上線的日子
『末班電車』=業界平均的下班時間
『颱風假』=一年一度可以準時下班的業界假日
ex 16
當誰寫的程式碼跑出bug時,那個人大概都不在了(墨菲定理?)
ex 17
最終手段
「重開機」
意外的常常都很有效
ex 18
最強藉口
以前「那是硬體的極限」
現在「那是Windows的規格」
ex 19
「程式碼的可信度,不會比寫的人還可信。」
提供 WPF 架構層級屬性集、事件和 Windows Presentation Foundation (WPF) 項目的方法。這個類別 (Class) 代表所提供的 WPF 架構層級實作 (Implementation),建置在由 UIElement 所定義的 WPF 核心層級 API 之上。
Dim dx, dy
Dim dx1, dy1
Private Sub Form_Load()
dx = 1
dy = 1
dx1 = 1
dy1 = 1
Timer1.Interval = 20
r.FillColor = vbYellow
End Sub
Private Sub Timer1_Timer()
If r.Left > 6480 Then dx = -1
If r.Left < 1 Then dx = 1
r.Left = r.Left + 150 * dx
If r.Top > 3960 Then
dy = -1
r.FillColor = vbRed
End If
If r.Top < 1 Then
dy = 1
n = Int(Rnd * 16)
r.FillColor = QBColor(n)
End If
r.Top = r.Top + 150 * dy
'
'
If t.Left > 6480 Then dx1 = -1
If t.Left < 1 Then dx1 = 1
t.Left = t.Left + 150 * dx1
If t.Top > 3960 Then
dy1 = -1
t.FillColor = vbRed
End If
If t.Top < 1 Then
dy1 = 1
n = Int(Rnd * 16)
t.FillColor = QBColor(n)
End If
t.Top = t.Top + 150 * dy1
End Sub
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'最大值、第二大值,不Sorting
Dim i
Dim a() = {2, 5, 1, 3, 4}
Dim aM1, aM2
If a(0) > a(1) Then
aM1 = a(0)
aM2 = a(1)
Else
aM1 = a(1)
aM2 = a(0)
End If
For i = 2 To 4
If a(i) > aM1 Then
aM2 = aM1
aM1 = a(i)
End If
If a(i) < aM1 And a(i) > aM2 Then
aM2 = a(i)
End If
Next
MsgBox("最大值:" & aM1 & "第二大值:" & aM2)
End Sub
End Class
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'最大值
Dim i
Dim a() = {2, 4, 5, 1, 3}
Dim aMax = a(0)
For i = 2 To 4
If a(i) > aMax Then aMax = a(i)
Next
MsgBox("最大值:" & aMax)
'aMin 最小值
Dim aMin = a(0)
For i = 2 To 4
If a(i) < aMin Then aMin = a(i)
Next
MsgBox("最小值:" & aMin)
End Sub
End Class
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'文字
'Dim str1 = "王先生"
'str1 = str1 & vbNewLine
'str1 = str1 & "您好"
'MsgBox(str1)
'數字
'Dim n1 = 100
'Dim n2 = 200
'MsgBox(n1 & "+" & n2 & "=" & n1 + n2)
'文字 + 數字
Dim str1 = "王小美"
Dim str2 = "上課睡覺"
Dim n1 = 3
MsgBox(str1 & n1 + 2 & "次" & str2)
End Sub
End Class
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'使用String
Dim str1 = "王先生"
str1 = str1 & vbNewLine
str1 = str1 & "您好"
MsgBox(str1)
'使用StringBuilder
Dim sb As System.Text.StringBuilder = New System.Text.StringBuilder
sb.AppendLine("王先生")
sb.Append("您好")
MsgBox(sb.ToString)
End Sub
End Class
<?xml version=”1.0″ encoding=”utf-8″?>
<rss version=”2.0″>
<channel>
…
…
<item>
…
…
</item>
<item>
…
…
</item>
<item>
…
…
</item>
</channel>
</rss>
加上MouseOver透明度更改功能。
<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="550" Width="419">
<Window.Resources>
<Style TargetType="Image">
<Setter Property="Width" Value="120" />
<Setter Property="Margin" Value="5" />
<Setter Property="Opacity" Value="0.2" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Trigger.Setters>
<Setter Property="Opacity" Value="1" />
</Trigger.Setters>
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="ListBox">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBox">
<Border BorderThickness="1" BorderBrush="Black">
<ScrollViewer>
<StackPanel IsItemsHost="True" Orientation="Vertical"/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
<Grid>
<StackPanel Margin="93,32,98,0" Height="441" VerticalAlignment="Top">
<Label FontSize="30" HorizontalAlignment="Center">Image List</Label>
<ListBox Width="155" HorizontalAlignment="Center" Height="385">
<Image Source="Humpback Whale.jpg" />
<Label FontSize="12" HorizontalAlignment="Center">Humpback Whale</Label>
<Image Source="Oryx Antelope.jpg" />
<Label FontSize="12" HorizontalAlignment="Center">Oryx Antelope</Label>
<Image Source="Toco Toucan.jpg" />
<Label FontSize="12" HorizontalAlignment="Center">Toco Toucan</Label>
<Image Source="Green Sea Turtle.jpg" />
<Label FontSize="12" HorizontalAlignment="Center">Green Sea Turtle</Label>
</ListBox>
</StackPanel>
</Grid>
</Window>
<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="550" Width="419">
<Window.Resources>
<Style TargetType="Image">
<Setter Property="Width" Value="120" />
<Setter Property="Margin" Value="5" />
</Style>
<Style TargetType="ListBox">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBox">
<Border BorderThickness="1" BorderBrush="Black">
<ScrollViewer>
<StackPanel IsItemsHost="True" Orientation="Vertical"/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
<Grid>
<StackPanel Margin="93,32,98,0" Height="441" VerticalAlignment="Top">
<Label FontSize="30" HorizontalAlignment="Center">Image List</Label>
<ListBox Width="155" HorizontalAlignment="Center" Height="385">
<Image Source="Humpback Whale.jpg" />
<Label FontSize="12" HorizontalAlignment="Center">Humpback Whale</Label>
<Image Source="Oryx Antelope.jpg" />
<Label FontSize="12" HorizontalAlignment="Center">Oryx Antelope</Label>
<Image Source="Toco Toucan.jpg" />
<Label FontSize="12" HorizontalAlignment="Center">Toco Toucan</Label>
<Image Source="Green Sea Turtle.jpg" />
<Label FontSize="12" HorizontalAlignment="Center">Green Sea Turtle</Label>
</ListBox>
</StackPanel>
</Grid>
</Window>
研習課程介紹
項目
內容研習名稱
VB6升級VB2008教學升級依據文號
1.依據97年度高中職社區化合作計畫辦理。 2.依據義中教字第0970004988號函辦理。課程內容大綱
1.vb2008升級教學
2.VB6升級VB2008上課日期
2008/12/19 至 2008/12/19報名日期
2008/12/1 起 至 2008/12/17 止課程時段
週一至週五白天 /課程時間及地點…等詳細描述
1.研習日期:97年12月19日上午10:00~12:00
2.研習地點:義民高中勤學大樓1樓電腦教室
3.研習講師:吳進北老師
4.校址:新竹縣竹北市中正西路15號。班別性質
非學分班課程性質
高中(含完全中學高中部及綜合中學高中部) / 教學 / 資訊教育類科 / 無研習時數 / 學分數
2 小時 / 學分
(僅非學分班以小時計算,學分班、學位班皆以學分數為單位)參加對象
高中(含完全中學高中部及綜合中學高中部) / 高職(含綜合高中高職部) 教師學員繳費方式
無繳費金額
0 元 (學分班、學位班繳費金額以每一學分為單位)開班班數
1 班各班人數
35 人承 辦 人
姓 名:謝蘭名
聯絡電話:03-5552020-130
E-Mail:學校資訊
新竹縣 私立義民高中
[302]新竹縣竹北市中正西路15號
(03)5552020
www.ymsh.hcc.edu.tw
十大人氣關鍵字排行榜。今年奪冠的「腳踏車」搜尋量高達1600萬次,其他分別為:裝潢、法拍屋、保全、房貸、風水、減肥、懷孕、租屋、旅行社。
技藝競竇相關
研討會相關
【高雄】97-2 教師專業發展 從VB6~VB2008教學無痛升級教師研習
VisualBasic 6~VisualBasuc 2008無痛升級與選手訓練教師研習
技術合作處 -- 「從VB6~VB2008無痛升級與選手訓練研習」活動開始報名,歡迎老師踴躍參加
2008/10/25 僑光技術學院 VB2008無痛升級、技藝競賽程式設計比賽研討會 投影片下載
WPF 範例
WPF相關
Windows Presentation Foundation (WPF) - Home
Windows Presentation Foundation (WPF) - Release: W...
Download details: .NET Framework 3.5 Service pack ...
Getting Started with "WPF/E" (Code Name)
Windows Presentation Foundation 簡介
WPF Videos - WindowsClient.net
DispatcherTimer 類別 (System.Windows.Threading)
VB2008
VB2008 -- If 、Loop
VB2008 – 字元、字串處理
VB2008 -- 副程式、檔案、陣列
VB2008 – 繪圖
VB2008 – 與Office互動
加入Microsoft Office 11.0 Object Library的方法
VB2008 -- LINQ
VB2008 -- 其他
Microsoft.VisualBasic.Left 前綴太長的變通方案
在 C# 中調用 VB.Net 2005 的 My 物件及其他函數
在C#中调用Microsoft.VisualBasic命名空间下的类型验证函数 - 二十四画生的Bl...
在VS2008上開發Silverlight不會出現intellisense的解決辦法
11 Visual Studio 2005 IDE Tips and Tricks to Make ...
Code Snippet Editor for Visual Basic 2008
Examples of Features Provided by My
Vista
Excel
SilverLight
First Look at Silverlight 2 - ScottGu's Blog
program
CodeProject: Motion Detection Algorithms. Free sou...
Blogger & Web
DIY widgets - How to embed your site on another si...
NKTalk - 技術文件 - 製作 Yahoo! Widget Engine 的 Widget
Office
How to Convert PowerPoint to Flash Manually - Web ...
IBM Lotus Symphony 產品試用 - Taiwan
訊息分享
iThome online : : 平面設計人員也能開發Ajax網站
ZDNet Taiwan - 企業應用 - 部落格 - 由電影"海角七號"看台灣自由軟體力量整合大不...
ZDNet Taiwan - 新聞 - Web應用 - 紐約時報發行人:不在乎實體報紙存不存在
ZDNet Taiwan - 新聞 - 網路通訊 - Android與 iPhone:南轅北轍的開發...
ZDNet Taiwan - 新聞 - 數位產品 - 耶魯MBA院長將執掌「蘋果大學」
博客來書籍館>Visual Basic 2008啟蒙範例書(附光碟)
iThome online : : 微軟發表Silverlight 2 中文版開發工具下月支援
CodeProject: Moving Toward WPF Data Binding One St...
ZDNet Taiwan - 企業應用 - 部落格 - [網路部落格]讓電腦發呆的常見操作
ZDNet Taiwan - 新聞 - 企業軟體 - Adobe在RIA市場的下一步:持續整合產品
ZDNet Taiwan - 新聞 - Web應用 - Ballmer暗示會有「Windows Cl...
ZDNet Taiwan - 新聞 - 企業軟體 - 參加PDC可拿到初期版Windows 7
如何進入程式設計的領域 蔡學鏞 - GGDD的专栏 - CSDNBlog
[Cloud Computing]雲端現況--Google Cloud - IT邦幫忙::IT知識分...
專家建議:五種最值得學習的JAVA開發技術 — IT技術 - 賽迪網
:::工研院學習服務網-專題學習-【王品集團個案全解析】從149萬到50億的成長之路:::
沙加緬度州立大學錄得20%增長 修讀電腦學生止跌回升_新聞頁_北美新浪網
系統化學習的必要性 - Google時代電腦書存在的意義 - 康廷數位- 點部落
系統化學習的必要性 - Google時代電腦書存在的意義 - 康廷數位- 點部落
Silverlight 2.0 之前 … - 康廷數位- 點部落
Silverlight 2.0 的改良 - 康廷數位- 點部落
Silverlight 2.0 繁體中文版11月推出 - 康廷數位- 點部落
【Silverlight 2.0 - Web 應用程式開發 X RIA 實踐(Using C#)】 ...
發展前景看好 雲計算處於備受關注的青春期 — IT產品 - 賽迪網
你知道這些科技新字怎麼念嗎?Linux, Google, Youtube, SQL, Xoops, ...
ZDNet Taiwan - 新聞 - 企業軟體 - Silverlight 2中文版11月推出
Foreword - zhpy - Google Code - 前言
:::工研院學習服務網-專題學習-【圖解賽局理論】綜觀全局,預知競爭對手的行動:::
:::工研院學習服務網-專題學習-智慧型居家空間的重要推手—無線感測網路:::
Linux之父10大名言:微软操作系统性能太次 , 操作系统,虚拟化,软件,托
Salut, Leo!: 7/16詹宏志演講"web3.0"的重點整理
Sun Tzu on The Art of War (Part 1)
The Secret of Janfusun Fancy World | 數位時代 Beta2.0
Web X 網路近未來 - Web 2.0 & It’s Economy
What is 43 Things? on 43 Things
ZDNet Taiwan - 新聞 - 企業軟體 - Windows 7細節10月揭曉
ZDNet Taiwan - 新聞 - 企業軟體 - 賽門鐵克:防毒掃瞄 95%是多餘
朱學恆阿宅萬事通事務所 - 詹宏志大人的網海餘生六講.....
校園博覽會 - 升大學考生 - 校系停看聽 - 校系FAQ》台大電資學院
電子商務之降龍十八掌 -- 第一掌:亢龍有悔 -- 摘要(一)
電子商務之降龍十八掌 -- 第一掌:亢龍有悔 -- 摘要(二)
每日一句
每日一小品
This project is the portal for accessing the WPF Toolkit and the WPF Futures releases.
Downloads & Files
application, 322K, uploaded Oct 28 - 7654 downloads
source code, 751K, uploaded Oct 28 - 6852 downloads
Windows Presentation Foundation (WPF) - Release: WPF Toolkit - October 2008 Release
【高雄】97-2 教師專業發展 從VB6~VB2008教學無痛升級教師研習
‧活動簡介
一、程式設計課程為高職、大專院校必修課程,且為台灣產業界近幾年來大量需求之人才重要專長技能之一,業界與學界皆十分重視。為培養及建立基礎程式教育人才,採用目前最新版本的VisualBasic 2008程式開發軟體辦理研習,希望能協助參與研習教師,藉此研習熟悉新的開發工具,並精進程式設計教學能力。
二、從VisualBasic 6升級至VisualBasic 2008的教學無痛升級。‧活動類別
研討會‧區域別
南區‧主辦單位
高雄市立高雄高商 / 實習處‧開始研習日期
2008/12/1‧結束研習日期
2008/12/1‧研習地點
百齡大樓五樓1504電腦教室‧研習地址
高雄市新興區五福二路三號
' 二、過橋問題 (15%)
' 有n個人想要在晚上過橋,橋上每次最多只能容許兩個人行走。由於全部只有一支手電筒,
' 所以每次兩個人拿著手電筒過橋後,必須有一人再把手電筒拿回來,這樣後面的人才能繼續過橋。
' 每個人走路的速度不同,過橋所需的時間也因此不同。而每次過橋的那兩個人,其花費的時間以較慢的那個人計算
' (走的快的當然要等走的慢的,因為只有一支手電筒)。你的任務是寫一個程式,安排這n個人過橋,
' 並使得總共花費的時間最少。
' 輸入規範
' 輸入檔案的第一列有一個正整數,代表以下有多少組測試資料。每組測試資料的第一列有1個整數n,
' 代表要過橋的人數(最多不會超過1000人)。接下來的n列,每列有1個整數,代表這n個人過橋所需的時間(秒),
' 這些時間均不會超過100秒。
' 輸入的第一列與第一組測試資料之間,以及各組測試資料之間均有一空白列(請參考輸入範例)。
' 輸出規範
' 每組測試資料輸出的第一列為一個整數,代表這組中n個人過橋所需的最少時間。
' 接下來的列為達到此最少時間的過橋方式。每列有1個或2個整數代表過橋的人
' (每個人以其過橋所需的時間代表。雖然可能有2人過橋時間相同,但那並不會影響結果)。
' 請注意,過橋的順序是去、回交替的,因為需有一人把手電筒帶回。
' 以第一組輸出為例說明:最少需17秒才能讓這4個人過橋。
' 方式為:1秒、2秒的人先過橋,1秒的回來,5秒、10秒的過橋,2秒的回來,最後1秒、2秒的過橋,
' 所以總共的時間為:2+1+10+2+2=17。
' 如果有不止一種方式可以達到最少時間,輸出任何一種均可。輸出資料的組間亦請空一列。
' 輸入範例(test2.txt)
' 2
' 4
' 1
' 2
' 5
' 10
' 4
' 1
' 98
' 99
' 100
' 輸出範例(result2.txt)
' 17
' 1 2
' 1
' 5 10
' 2
' 1 2
' 299
' 1 100
' 1
' 1 99
' 1
' 1 98
' 過橋問題不限定人數版
Public Class Form1
Dim dlist As New ArrayList
Dim slist As New ArrayList
Dim resultStr = ""
Dim resultStr1 = ""
Dim total = 0
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide()
Dim fileContents As String
fileContents = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\Test2.txt")
Dim recArray = Split(fileContents, vbNewLine)
Dim ternN = Val(recArray(0))
Dim recIndex = 2
For j As Integer = 1 To ternN
Dim dataN = Val(recArray(recIndex))
For i As Integer = 1 To dataN
slist.Add(Val(recArray(recIndex + i)))
Next
slist.Sort()
total = 0
resultStr = ""
bridge(slist, dlist, slist.Count)
resultStr = total & vbNewLine & resultStr
resultStr1 = resultStr1 & resultStr & vbNewLine
recIndex = recIndex + dataN + 1 + 1
Next
'MsgBox(resultStr1)
My.Computer.FileSystem.WriteAllText(Application.StartupPath & "\result2.txt", resultStr1, False)
End
End Sub
Sub bridge(ByVal slist, ByVal dlist, ByVal n)
If n = 2 Then
slist.sort()
resultStr = resultStr & slist(0) & " " & slist(1) & vbNewLine
total = total + IIf(slist(0) > slist(1), slist(0), slist(1))
dlist.Add(slist(0))
dlist.Add(slist(1))
slist.Remove(slist(1))
slist.Remove(slist(0))
Else
slist.Sort()
If n = 3 And (slist(2) - slist(1)) > (slist(1) - slist(0)) Then
slist.Reverse()
resultStr = resultStr & slist(1) & " " & slist(0) & vbNewLine
Else
resultStr = resultStr & slist(0) & " " & slist(1) & vbNewLine
End If
total = total + IIf(slist(0) > slist(1), slist(0), slist(1))
dlist.Add(slist(0))
dlist.Add(slist(1))
slist.Remove(slist(1))
slist.Remove(slist(0))
dlist.Sort()
resultStr = resultStr & dlist(0) & vbNewLine
total = total + dlist(0)
slist.Add(dlist(0))
dlist.Remove(dlist(0))
bridge(slist, dlist, n - 1)
End If
End Sub
End Class
' Problem7:奥步戰術(17%)
' 在黑暗算法界中,使用奧步解題似乎已經漸漸成為主流。雖然使用奧步將漸漸使人走向魔路,最後被內心的虛無吞
' 噬,不過這不是今天的問題。考慮在某個考試中,有n 道題目,而總答題時間為T。對於每題都只有三種可能:
' 1. 正解能得到全對的分數(得2 分)
' 2. 奧步能拿到半對(得1 分)
' 3. 放棄的話當然就沒分囉(0 分)
' 而對每題來說,要達到這三種分數所需花的時間皆不同,所有題目拿0 分都不用花費時間;在題目i 使用奧步拿半
' 對所需時間為Hi,要寫正解所需時間為Ci ,其中對於任何題目i,必有滿足0' 試問:在時間T 內,用最佳的答題方式,最多可以拿幾分?
' 輸入說明:
' 輸入檔第一行說明有幾組測試資料,第二行有兩個整數n 和T,分別代表有幾題,以及總作答時間。接下來n 行每
' 行有兩個整數Ci 和Hi,代表第i 題寫正解需要時間Ci,寫奧步需要時間Hi。其中:
' 題目總數n≤100000
' 答題所需時間1≤Hi,Ci≤1000000
' 總作答時間0' 輸出說明:
' 每個測試範例請輸出一個整數,代表最大得分。
' 輸入範例:
' 2
' 5 12
' 4 3
' 6 2
' 5 3
' 4 3
' 5 2
' 4 10
' 5 3
' 6 5
' 3 1
' 4 3
' 輸出範例:
' 6
' 5
Structure recData
Dim c As Integer
Dim h As Integer
Dim cR As Single
Dim hR As Single
Dim isC As Boolean
Dim isUsed As Boolean
End Structure
Public Class Form1
' Dim debugStr = ""
Dim resultStr = ""
Dim score = 0
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide()
Dim a(100000) As recData
Dim fileContents As String
fileContents = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\Test7.txt")
Dim recArray() = Split(fileContents, vbNewLine)
Dim recN = Val(recArray(0))
Dim recIndex = 1
For j As Integer = 1 To recN
'read data for one turn
Dim dataArray = Split(recArray(recIndex), " ")
Dim dataN = Val(dataArray(0))
Dim t = Val(dataArray(1))
For i = 1 To dataN
dataArray = Split(recArray(recIndex + i))
a(i).c = Val(dataArray(0))
a(i).h = Val(dataArray(1))
a(i).cR = 2 / a(i).c
a(i).hR = 1 / a(i).h
a(i).isC = True
a(i).isUsed = False
Next
'proc one turn
Dim c = 1
While t > 0 And c <= dataN
'find the max
Dim pMax As Single = 0
Dim maxIndex = 0
For i3 = 1 To dataN
If a(i3).cR > pMax And a(i3).isUsed = False Then
pMax = a(i3).cR
maxIndex = i3
End If
Next
For i3 = 1 To dataN
If a(i3).hR > pMax And a(i3).isUsed = False Then
pMax = a(i3).hR
maxIndex = i3
a(i3).isC = False
End If
Next
'accmulate score and subtract the time
If a(maxIndex).isC = True Then
t = t - a(maxIndex).c
score = score + 2
'debugStr = debugStr & a(maxIndex).c & a(maxIndex).h & "C" & vbNewLine
Else
t = t - a(maxIndex).h
score = score + 1
' debugStr = debugStr & a(maxIndex).c & a(maxIndex).h & "H" & vbNewLine
End If
a(maxIndex).isUsed = True
c = c + 1
End While
' MsgBox(debugStr)
resultStr = resultStr & score & vbNewLine
' clear data for next turn
ReDim a(100000)
score = 0
recIndex = recIndex + dataN + 1
Next
MsgBox(resultStr)
'My.Computer.FileSystem.WriteAllText(Application.StartupPath & "\result7.txt", resultStr, False)
End
End Sub
End Class
' Problem6:中文大寫數字(13%)
' 我們在金融機構填寫金額時使用的不是阿拉伯數字,而是中文的大寫數字。請寫一個程式將數字轉換為中文大寫數
' 字。
' 標準大寫寫法如下:零、壹、貳、參、肆、伍、陸、柒、捌、玖、拾、佰、仟、萬、億
' 輸入說明:
' 整數數字n (0 ≤ n ≤ 2147483647)。
' 輸出說明:
' 文字字串,遇到10 時,請輸出『壹拾』。
' 輸入範例:
' 12345
' 10200
' 輸出範例:
' 壹萬貳仟參佰肆拾伍
' 壹萬零貳佰
'
' 這一題只考慮測試資料會錯的很離譜
' 這個程式可以處理102345=>壹拾萬貳仟参佰肆拾伍情況
Public Class Form1
Dim resultStr = ""
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide()
Dim strB = "零壹貳參肆伍陸柒捌玖"
Dim strA = "0123456789"
Dim fileContents As String
fileContents = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\Test6.txt")
Dim recArray() = Split(fileContents, vbNewLine)
Dim recIndex = 0
While recArray(recIndex) <> ""
Dim strS = recArray(recIndex)
Dim strT = "" '暫存每次一筆記錄轉成之字串
Dim numT = Mid(strB, InStr(strA, Mid(strS, Len(strS), 1)), 1)
strT = numT
Dim level = 1 '單位
For i = Len(strS) - 1 To 1 Step -1
Dim strLevel = Choose(level, "拾", "佰", "仟", "萬", "拾", "佰", "仟", "億", "拾")
numT = Mid(strB, InStr(strA, Mid(strS, i, 1)), 1)
If numT = "零" Then
If strLevel = "萬" Or strLevel = "億" Then
strT = numT & strLevel & strT
Else
strT = numT & strT
End If
Else
strT = numT & strLevel & strT
End If
level = level + 1
Next
'修飾strT
If Len(strT) > 3 Then
If Microsoft.VisualBasic.Left(strT, 3) = "壹拾零" Then
strT = Microsoft.VisualBasic.Left(strT, 2) & Mid(strT, 4, Len(strT) - 3)
End If
Else
strT = "壹拾"
End If
'改連續零為一個零
Dim pre = "零"
Dim strT1 = ""
For j = Len(strT) To 1 Step -1
If Not (Mid(strT, j, 1) = "零" And pre = "零") Then
strT1 = Mid(strT, j, 1) & strT1
End If
pre = Mid(strT, j, 1)
Next
strT = strT1
'處理零萬狀況
If Microsoft.VisualBasic.Right(strT, 2) = "零萬" Then
strT = Microsoft.VisualBasic.Left(strT, Len(strT) - 2)
End If
If InStr(strT, "拾零萬") <> 0 Then
strT = Replace(strT, "拾零萬", "拾萬")
End If
'處理零狀況
If recArray(recIndex) = "0" Then strT = "零"
resultStr = resultStr & strT & vbNewLine
recIndex = recIndex + 1
End While
MsgBox(resultStr)
' My.Computer.FileSystem.WriteAllText(Application.StartupPath & "\result5.txt", resultStr, False)
End
End Sub
End Class
' Problem5:糊塗情報員(16%)
' 有一位間諜,依他所屬情報單位要求編碼的方式,將他所收集到情報全部編成數字碼。但他認為這樣還是不夠安全,
' 因此他再將這些數字字串,隨意切割成好幾個整數,然後將每個整數用一個數學算式來表示。這些算式只用了加、減、
' 乘三種運算子,而且每個運算元都是正整數。最後,他為了讓他自己更為心安,他將整個密碼分成兩本密碼簿儲存。密
' 碼本A 存放這些數學算式,但他將算式內的所有括號全部拿掉,然後再將這些拿掉的括號資訊記錄在密碼本B 裡面。
' 過了不久,這個間諜發現他把密碼本B 弄丟了,再加上他的記憶力不好,很多情報內容根本記不得,所以現在沒了
' 密碼本B 幾乎束手無策。在不得已的情況下,他的情報單位派了幾位心理與腦神經專家詢問他,希望能喚起他腦海內的
' 記憶。這些專家試了好幾天,用盡各種辦法後,終於承認他的記憶力果真很差,怎麼也問不出情報內容。倒是心理學專
' 家有一發現,即這位情報員在寫密碼算式時,傾向於將括號加在那些會讓算式得最大值的位置。例如5*7+2 這個算式,
' 有兩種括法:((5*7)+2)以及(5*(7+2)),第二種括法所得的值較大。請寫一程式,算出這些算式的可能最大值。
' 輸入說明:
' 每一筆輸入資料為一行算式,運算子只有三種,即一般的加、減、乘三種二元運算子,分別以符號' +' 、' -' 、' *'
' 表示。每一個運算元都是一個正整數( ≤ 100),運算元和運算子之間不會有空白,一行算式不會有超過50 個運算元。
' 輸出說明:
' 相對於每一輸入算式,輸出所有可能運算結果的最大值。該值都會是一個正整數,而且不會超過2147483647。
' 輸入範例:
' 5*7+2
' 6*3-9*3
' 5+2-7*2-3
' 範例輸出:
' 45
' 27
' 14
Public Class Form1
Dim resultStr = ""
Dim str1 As String
Dim ans As Integer
Dim ans1 As Integer
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide()
Dim fileContents As String
fileContents = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\Test5.txt")
Dim recArray() = Split(fileContents, vbNewLine)
Dim recIndex = 0
While recArray(recIndex) <> ""
Dim str1 = recArray(recIndex)
proc_one_rec(str1)
recIndex = recIndex + 1
End While
MsgBox(resultStr)
'My.Computer.FileSystem.WriteAllText(Application.StartupPath & "\result5.txt", resultStr, False)
End
End Sub
Sub proc_one_rec(ByVal str1)
'由左而右
ans = Val(Mid(str1, 1, 1))
listStr(str1, 2)
'由右而左
ans1 = Val(Mid(str1, Len(str1), 1))
listStr1(str1, Len(str1) - 1)
Dim ansBig = IIf(ans > ans1, ans, ans1)
resultStr = resultStr & ansBig & vbNewLine
'MsgBox(ansBig & " " & ans & " " & ans1)
End Sub
Sub listStr(ByVal str1, ByVal n)
If n = Len(str1) - 1 Then
Dim op = Mid(str1, n, 1)
Dim opN = Mid(str1, n + 1, 1)
ans = Microsoft.VisualBasic.Switch(op = "+", ans + opN, op = "-", ans - opN, op = "*", ans * opN)
Else
Dim op = Mid(str1, n, 1)
Dim opN = Mid(str1, n + 1, 1)
ans = Microsoft.VisualBasic.Switch(op = "+", ans + opN, op = "-", ans - opN, op = "*", ans * opN)
listStr(str1, n + 2)
End If
End Sub
Sub listStr1(ByVal str1, ByVal n)
If n = 2 Then
Dim op = Mid(str1, n, 1)
Dim opN = Mid(str1, n - 1, 1)
ans1 = Microsoft.VisualBasic.Switch(op = "+", opN + ans1, op = "-", opN - ans1, op = "*", opN * ans1)
Else
Dim op = Mid(str1, n, 1)
Dim opN = Mid(str1, n - 1, 1)
ans1 = Microsoft.VisualBasic.Switch(op = "+", opN + ans1, op = "-", opN - ans1, op = "*", opN * ans1)
listStr1(str1, n - 2)
End If
End Sub
End Class
' Porblem4:百貨公司打折程式(12%)
' 豪慷慨百貨公司週年慶的打折策略,吸引了許多客人上門,因此公司決定再回饋客戶,當客戶消費超過2000 元時
' 打7 折,消費超過5000 元時打6 折,消費超過10000 元時打55 折。請幫該公司寫出一個新的收銀台程式,輸入顧客購
' 買總金額n 後,計算顧客實際需付的錢。
' 輸入說明:
' 購買金額n
' 輸出說明:
' 實付金額
' 輸入範例:
' 3000
' 6000
' 12000
' 輸出範例:
' 2100
' 3600
' 6600
Public Class Form1
Dim resultStr = ""
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide()
Dim fileContents As String
fileContents = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\Test4.txt")
Dim recArray() = Split(fileContents, vbNewLine)
Dim recIndex = 0
While recArray(recIndex) <> ""
Dim amount = recArray(recIndex)
Dim finalAmount = amount
If amount > 2000 Then
finalAmount = amount * 0.7
End If
If amount > 5000 Then
finalAmount = amount * 0.6
End If
If amount > 10000 Then
finalAmount = amount * 0.55
End If
resultStr = resultStr & finalAmount & vbNewLine
recIndex = recIndex + 1
End While
MsgBox(resultStr)
'My.Computer.FileSystem.WriteAllText(Application.StartupPath & "\result4.txt", resultStr, False)
End
End Sub
End Class
' Problem3:基礎排序(13%)
' 給一堆數字, 把他們從小到大排序好。
' 輸入說明:
' 每組測試資料共有兩行,第一行的數字n 為有幾個數字要排序,第二行則有n 個整數(n ≤1000),其餘整數皆於-10000
' 到10000 之間,測試資料中包含多組測試,當排序個數為0 時結束。
' 輸出說明:
' 輸出已排序好的數列,每個數字之間請用一個空白隔開。
' 輸入範例:
' 5
' 5 4 3 2 1
' 5
' -1 -2 -3 -4 -5
' 0
' 輸出範例:
' 1 2 3 4 5
' -5 -4 -3 -2 -1
Public Class Form1
Dim resultStr = ""
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide()
Dim fileContents As String
fileContents = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\Test3.txt")
Dim recArray() = Split(fileContents, vbNewLine)
Dim recIndex = 0
While recArray(recIndex) <> "0"
Dim N = Val(recArray(recIndex))
Dim dataArray() = Split(recArray(recIndex + 1))
For i = 0 To N - 1 - 1
For j = i + 1 To N - 1
If Val(dataArray(i)) > Val(dataArray(j)) Then
Dim tem = dataArray(i)
dataArray(i) = dataArray(j)
dataArray(j) = tem
End If
Next
Next
For i = 0 To N - 1
resultStr = resultStr & dataArray(i) & " "
Next
resultStr = resultStr & vbNewLine
recIndex = recIndex + 2
End While
MsgBox(resultStr)
'My.Computer.FileSystem.WriteAllText(Application.StartupPath & "\result3.txt", resultStr, False)
End
End Sub
End Class