我正在创建一个调度算法。我的代码变得很长。任何人都可以建议我怎样才能让我的代码更短,因为我必须在下面多次重复相同的事情,而外部的其他位置是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