private void AddResultToListOfCurrentEqualities(string currentPurpose, Dictionary <string, double> listResultAndCF) { string Result = ""; double CF = 0; List <string> RulesWithIdenticalCF = new List <string>(); bool IsFirstPass = true; foreach (var CurrentResultAndCF in listResultAndCF) { if (CurrentResultAndCF.Key != "Таких правил не существует") { if (IsFirstPass) { Result = CurrentResultAndCF.Key; CF = CurrentResultAndCF.Value; RulesWithIdenticalCF.Add(CurrentResultAndCF.Key); IsFirstPass = false; } else { if (CF < CurrentResultAndCF.Value) { Result = CurrentResultAndCF.Key; CF = CurrentResultAndCF.Value; RulesWithIdenticalCF.Clear(); RulesWithIdenticalCF.Add(Result); } else { if (CF == CurrentResultAndCF.Value) { RulesWithIdenticalCF.Add(CurrentResultAndCF.Key); } } } } } if (!IsFirstPass) { if (ListOfCurrentEqualities.Keys.Contains(currentPurpose)) { ListOfCurrentEqualities[currentPurpose] = Result; } else { ListOfCurrentEqualities.Add(currentPurpose, Result); } } }
public void Reset() { ListOfCurrentEqualities.Clear(); ListReadyAnswers.Clear(); }