2015-10-19 129 views
0

任何人都可以幫助我把這段代碼嵌入循環請。這是一個代碼,用於計算按優先順序排列的候選人的最低分數,其中1代表首選,5代表最高。把我的代碼嵌入循環

Dim min = 0 
    If Candidate1total > min Then 
    min = Candidate1total 
    LabelWINNER.Text = EnterNames.Cand1Name.Text 
End If 
If Candidate2total < min Then 
    min = Candidate2total 
    LabelWINNER.Text = EnterNames.Cand2Name.Text 
End If 
If Candidate3total < min Then 
    min = Candidate3total 
    LabelWINNER.Text = EnterNames.Cand3Name.Text 
End If 
If Candidate4total < min Then 
    min = Candidate4total 
    LabelWINNER.Text = EnterNames.Cand4Name.Text 
End If 
If candidate5total < min Then 
    min = candidate5total 
    LabelWINNER.Text = EnterNames.Cand5Name.Text 
End If 

候選人1總數到候選人5總數是候選人的總分數。這是通過計算用戶投票給他們的次數來計算的。如果該候選人在ENTERNAMES表格上給出的名字被放在標籤WINNER中,如果該候選人低於MINUIM。

我認爲這將是在candidate1總像爲0,我不是100%肯定,因此尋求幫助。

+0

什麼是'Candidate1total'和'EnterNames.Cand1Name' - 這取決於這些是什麼,以及他們是否是訪問作爲一個集合的一部分,會更容易或者更難把它們放在一個循環。 –

+0

這個問題缺乏在這裏提出問題所需的給定編程語言的基本知識/理解。另外,請求自定義代碼而沒有自己做任何事情(即,你甚至沒有啓動循環部分)也是無關緊要的。請閱讀幫助頁面,瞭解SO應該如何使用。 – varocarbas

+0

是的,我非常有幫助。您沒有按照預期使用本網站。這類題外話題最可能的結果是:沒有得到你想要的東西+被低估(和/或被標記爲低質量和/或被投票封閉)+對SO完全沒有積極貢獻(= just困擾他人)。你是新來者,我試圖幫助你理解你應該如何表現。你可以自由地從我的建議中獲益(甚至認真地認爲你完全知道你在做什麼,並且任何糾正你的行爲的人實際上都在做壞事)。 – varocarbas

回答

0

這是我會做什麼:

Dim Candidates = _ 
{ _ 
    New With { .Candidate = EnterNames.Cand1Name.Text, .Total = Candidate1total }, _ 
    New With { .Candidate = EnterNames.Cand2Name.Text, .Total = Candidate2total }, _ 
    New With { .Candidate = EnterNames.Cand3Name.Text, .Total = Candidate3total }, _ 
    New With { .Candidate = EnterNames.Cand4Name.Text, .Total = Candidate4total }, _ 
    New With { .Candidate = EnterNames.Cand5Name.Text, .Total = Candidate5total } _ 
} 

Dim result = _ 
    Candidates _ 
     .OrderBy(Function (c) c.Total) _ 
     .GroupBy(Function (c) c.Total, Function (c) c.Candidate) _ 
     .Select(Function (c) New With { .Candidate = String.Join(", ", c), .Total = c.Key }) _ 
     .First() 

所以,看到的結果,我用這個例子的數據:

Dim Candidates = _ 
{ _ 
    New With { .Candidate = "Mike", .Total = 5 }, _ 
    New With { .Candidate = "Tony", .Total = 2 }, _ 
    New With { .Candidate = "Bill", .Total = 2 }, _ 
    New With { .Candidate = "Carl", .Total = 3 }, _ 
    New With { .Candidate = "Dick", .Total = 4 } _ 
} 

我得到了這樣的結果:

result

當然,如果它只是一個總分最低的候選人,那麼w只能是Candidate字段中的一個名稱。