public void AddProposedCombination(List <Color> combination)
        {
            ProposedCombination proposedCombination = new ProposedCombination(combination);

            this.proposedCombinations.Add(proposedCombination);
            this.results.Add(this.GetResult(this.proposedCombinations[this.attempts]));
            this.attempts++;
        }
        public Result GetResult(ProposedCombination proposedCombination)
        {
            int blacks = 0;
            int whites = 0;

            for (int i = 0; i < this.Colors.Count; i++)
            {
                if (proposedCombination.Contains(this.Colors[i], i))
                {
                    blacks++;
                }
                else if (proposedCombination.Contains(this.Colors[i]))
                {
                    whites++;
                }
            }
            return(new Result(blacks, whites));
        }
 public void AddProposedCombination(ProposedCombination proposedCombination)
 {
     this.proposedCombinations.Add(proposedCombination);
     this.results.Add(this.secretCombination.GetResult(proposedCombination));
     this.attempts++;
 }
 public Result GetResult(ProposedCombination proposedCombination)
 {
     return(this.secretCombination.GetResult(proposedCombination));
 }