コード例 #1
0
ファイル: Contestant.cs プロジェクト: jnaus/PrisonersDilemma
        public StrategyChoice Step(StrategyChoice? opponentChoice)
        {
            if (Strategy == null) throw new NullReferenceException("Strategy not set");

              LastChoice = !opponentChoice.HasValue ? Strategy.Start() : Strategy.Step(opponentChoice.Value);
              return LastChoice.Value;
        }
コード例 #2
0
        public override StrategyChoice Step(StrategyChoice inputChoice)
        {
            var retValue = StrategyChoice.Cooperate;

            if (inputChoice == StrategyChoice.Cooperate)
            {
                retValue = StrategyChoice.Defect;
            }

            return(retValue);
        }
コード例 #3
0
ファイル: StrategyClasses.cs プロジェクト: skytribe/Day5
        private static void validateRandomChoice(StrategyChoice startStrategy, ref bool differentResult, ref RandomChoice p)
        {
            //Check one of the two valid values is found.
            //  bool foundValidValue = false;
            var x = p.Step(startStrategy);


            for (int i = 0; i < 5; i++)
            {
                p = new RandomChoice();
                var xr = p.Step(startStrategy);

                if (x != xr)
                {
                    differentResult = true;
                    break;
                }
            }
        }
コード例 #4
0
ファイル: Nice.cs プロジェクト: jnaus/PrisonersDilemma
 public override StrategyChoice Step(StrategyChoice inputChoice)
 {
     return StrategyChoice.Cooperate;
 }
コード例 #5
0
 public override StrategyChoice Step(StrategyChoice inputChoice)
 {
     return (StrategyChoice)rng.Next(0, 2);
 }
コード例 #6
0
ファイル: Game.cs プロジェクト: skytribe/Day5
 /// <summary>
 /// Returns the textual description for the strategy choice.
 /// </summary>
 /// <param name="choice"></param>
 /// <returns></returns>
 public static string Display(StrategyChoice choice)
 {
     return(choice == StrategyChoice.Cooperate ? "Cooperate" : "Defect");
 }
コード例 #7
0
ファイル: Strategy.cs プロジェクト: skytribe/Day5
 public abstract StrategyChoice Step(StrategyChoice inputChoice);
コード例 #8
0
ファイル: Mean.cs プロジェクト: jnaus/PrisonersDilemma
 public override StrategyChoice Step(StrategyChoice inputChoice)
 {
     return StrategyChoice.Defect;
 }
コード例 #9
0
 public override StrategyChoice Step(StrategyChoice inputChoice)
 {
     return (StrategyChoice)rng.Next(0, 2);
 }
コード例 #10
0
ファイル: Cooperator.cs プロジェクト: skytribe/Day5
 public override StrategyChoice Step(StrategyChoice inputChoice)
 {
     return(StrategyChoice.Cooperate);
 }
コード例 #11
0
ファイル: Strategy.cs プロジェクト: jnaus/PrisonersDilemma
 public abstract StrategyChoice Step(StrategyChoice inputChoice);
コード例 #12
0
ファイル: TitForTat.cs プロジェクト: jnaus/PrisonersDilemma
 public override StrategyChoice Step(StrategyChoice inputChoice)
 {
     return inputChoice;
 }
コード例 #13
0
ファイル: Defector.cs プロジェクト: skytribe/Day5
 public override StrategyChoice Step(StrategyChoice inputChoice)
 {
     return(StrategyChoice.Defect);
 }