我正在創建一個調度算法。我的代碼變得很長。任何人都可以建議我怎樣才能讓我的代碼更短,因爲我必須在下面多次重複相同的事情,而外部的其他位置是4或5,我必須重複更多:我可以簡化這個VB.net代碼嗎,所以我不必重複這麼多?
下面是我的部分示例代碼:
ElseIf Val(jobs_txt.Text) = 3 Then
If (a < b And b < c) Then
awt1_lbl.Text = Val(0)
awt2_lbl.Text = a
awt3_lbl.Text = a + b
y = (Val(awt1_lbl.Text) + Val(awt2_lbl.Text) + Val(awt3_lbl.Text))/3
awt_ans.Text = y
ElseIf (a < c And c < b) Then
awt1_lbl.Text = Val(0)
awt2_lbl.Text = a + b
awt3_lbl.Text = a
y = (Val(awt1_lbl.Text) + Val(awt2_lbl.Text) + Val(awt3_lbl.Text))/3
awt_ans.Text = y
ElseIf (b < a And a < c) Then
awt1_lbl.Text = a
awt2_lbl.Text = Val(0)
awt3_lbl.Text = a + b
y = (Val(awt1_lbl.Text) + Val(awt2_lbl.Text) + Val(awt3_lbl.Text))/3
awt_ans.Text = y
ElseIf (b < c And c < a) Then
awt1_lbl.Text = a + b
awt2_lbl.Text = Val(0)
awt3_lbl.Text = a
y = (Val(awt1_lbl.Text) + Val(awt2_lbl.Text) + Val(awt3_lbl.Text))/3
awt_ans.Text = y
ElseIf (c < a And a < b) Then
awt1_lbl.Text = a
awt2_lbl.Text = a + b
awt3_lbl.Text = Val(0)
y = (Val(awt1_lbl.Text) + Val(awt2_lbl.Text) + Val(awt3_lbl.Text))/3
awt_ans.Text = y
ElseIf (c < b And b < a) Then
awt1_lbl.Text = a + b
awt2_lbl.Text = a
awt3_lbl.Text = Val(0)
y = (Val(awt1_lbl.Text) + Val(awt2_lbl.Text) + Val(awt3_lbl.Text))/3
awt_ans.Text = y
End If
開始通過解釋你的代碼做什麼,那麼我們也許能夠幫助... – 2012-01-31 14:40:19
我有一個用戶可以輸入該程序將有多少職位處理文本框。該文本框將只允許2到5的值。當用戶單擊輸入時,他在文本框中輸入的作業數將出現在列表框中。我還有5個文本框將根據用戶輸入的作業數量啓用。在這些文本框中,用戶需要輸入運行時值。我希望獲得平均等待時間和平均週轉時間,而不必對工作號碼和運行時間進行排序。提前致謝。 – 2012-01-31 14:46:25
這應該被遷移到http://codereview.stackexchange.com/。它不符合SO的範圍以及代碼審查的範圍。 – Incognito 2012-01-31 14:47:20