static void Main(string[] args) { string str = FileReader.ReadFile("p054_poker.txt"); string[] cardPlays = str.Split('\n'); int playerOneWin = 0; int playerTwoWin = 0; int draw = 0; foreach (string players in cardPlays) { string playerOne = players.Substring(0, 14); string playerTwo = players.Substring(15, 14); Hands handOne = new Hands(playerOne); Hands handTwo = new Hands(playerTwo); int compair = Hands.Compair(handOne, handTwo); if (compair == 0) { draw++; } if (compair == 1) { playerOneWin++; } if (compair == -1) { playerTwoWin++; } } Console.WriteLine(string.Format("Result is {0}", playerOneWin)); }
public static int CompairType(Hands handOne, Hands handTwo) { if (handOne.HandType > handTwo.HandType) { return(1); } if (handTwo.HandType > handOne.HandType) { return(-1); } return(0); }
static void Main(string[] args) { string str = FileReader.ReadFile("p054_poker.txt"); string[] cardPlays = str.Split('\n'); int playerOneWin = 0; int playerTwoWin = 0; int draw = 0; foreach (string players in cardPlays) { string playerOne = players.Substring(0, 14); string playerTwo = players.Substring(15, 14); Hands handOne = new Hands(playerOne); Hands handTwo = new Hands(playerTwo); int compair = Hands.Compair(handOne, handTwo); if (compair == 0) draw++; if (compair == 1) playerOneWin++; if (compair == -1) playerTwoWin++; } Console.WriteLine(string.Format("Result is {0}", playerOneWin)); }
public static int Compair(Hands handOne, Hands handTwo) { // Compair hand type int typeCompair = CompairType(handOne, handTwo); if (typeCompair != 0) { return(typeCompair); } // Compair Royal Flush if (handOne.HandType == HandType.RoyalFlush) { return(0); } // Compair Straight flush if (handOne.FourValue != null && handTwo.FourValue != null) { if (handOne.FourValue.CardNumber > handTwo.FourValue.CardNumber) { return(1); } if (handOne.FourValue.CardNumber < handTwo.FourValue.CardNumber) { return(-1); } } if (handOne.ThreeValue != null && handTwo.ThreeValue != null) { if (handOne.ThreeValue.CardNumber > handTwo.ThreeValue.CardNumber) { return(1); } if (handOne.ThreeValue.CardNumber < handTwo.ThreeValue.CardNumber) { return(-1); } } if (handOne.PairValues != null && handTwo.PairValues != null) { if (handOne.PairValues.Count() == handTwo.PairValues.Count()) { for (int i = 0; i < handOne.PairValues.Count(); i++) { if (handOne.PairValues[i].CardNumber > handTwo.PairValues[i].CardNumber) { return(1); } if (handOne.PairValues[i].CardNumber < handTwo.PairValues[i].CardNumber) { return(-1); } } } } if (handOne.SingleValues != null && handTwo.SingleValues != null) { if (handOne.SingleValues.Count() == handTwo.SingleValues.Count()) { for (int i = 0; i < handOne.SingleValues.Count(); i++) { if (handOne.SingleValues[i].CardNumber > handTwo.SingleValues[i].CardNumber) { return(1); } if (handOne.SingleValues[i].CardNumber < handTwo.SingleValues[i].CardNumber) { return(-1); } } } } return(0); }
public static int CompairType(Hands handOne, Hands handTwo) { if (handOne.HandType > handTwo.HandType) return 1; if (handTwo.HandType > handOne.HandType) return -1; return 0; }
public static int Compair(Hands handOne, Hands handTwo) { // Compair hand type int typeCompair = CompairType(handOne, handTwo); if(typeCompair != 0) return typeCompair; // Compair Royal Flush if (handOne.HandType == HandType.RoyalFlush) return 0; // Compair Straight flush if (handOne.FourValue != null && handTwo.FourValue != null) { if (handOne.FourValue.CardNumber > handTwo.FourValue.CardNumber) return 1; if (handOne.FourValue.CardNumber < handTwo.FourValue.CardNumber) return -1; } if (handOne.ThreeValue != null && handTwo.ThreeValue != null) { if (handOne.ThreeValue.CardNumber > handTwo.ThreeValue.CardNumber) return 1; if (handOne.ThreeValue.CardNumber < handTwo.ThreeValue.CardNumber) return -1; } if (handOne.PairValues != null && handTwo.PairValues != null) { if (handOne.PairValues.Count() == handTwo.PairValues.Count()) { for (int i = 0; i < handOne.PairValues.Count(); i++) { if (handOne.PairValues[i].CardNumber > handTwo.PairValues[i].CardNumber) return 1; if (handOne.PairValues[i].CardNumber < handTwo.PairValues[i].CardNumber) return -1; } } } if (handOne.SingleValues != null && handTwo.SingleValues != null) { if (handOne.SingleValues.Count() == handTwo.SingleValues.Count()) { for (int i = 0; i < handOne.SingleValues.Count(); i++) { if (handOne.SingleValues[i].CardNumber > handTwo.SingleValues[i].CardNumber) return 1; if (handOne.SingleValues[i].CardNumber < handTwo.SingleValues[i].CardNumber) return -1; } } } return 0; }