/* מחלקת זוג הקוביות */ public class Dice { // הגדרת התכונות private int die1; //תוצאת ההטלה של הקובייה הראשונה private int die2; //תוצאת ההטלה של הקובייה השנייה private int maxDiceSum; private int doubleCount; private int[] doubleCountArr; // מערך המונים עבור הדאבלים // פעולה בונה public Dice() { die1 = 0; die2 = 0; maxDiceSum = 0; doubleCount = 0; doubleCountArr = new int[6]; for (int i = 0; i < 6; i++) doubleCountArr[i] = 0; } //פעולות גישה public int GetDie1() { return die1; } public int GetDie2() { return die2; } // הפעולה מטילה את שתי הקוביות ומעדכנת את התכונות public void ThrowDice() { Random rnd = new Random(); die1 = rnd.Next(1, 7); die2 = rnd.Next(1, 7); // עדכון הסכום המקסימלי שהתקבל מהטלת הקוביות if (die1 + die2 > maxDiceSum) maxDiceSum = die1 + die2; // עדכון כמות הפעמים שהתקבל דאבל, ומערך המונים if (die1 == die2) { doubleCount++; doubleCountArr[die1 - 1]++; } } // החזרת סכום הטלת זוג הקוביות הגבוה ביותר שהיה במשחק public int GetMaxDiceSum() { return maxDiceSum; } // החזרת מספר הפעמים שהתוצאה היתה דאבל public int GetDoubleCount() { return doubleCount; } // הפעולה מחזירה את תוצאת הדאבל שהתקבלה הכי הרבה פעמים public int GetMaxTimesDouble() { int maxIndex = 0; if (doubleCount == 0) // לא היה אף דאבל return 0; for (int i = 1; i < doubleCountArr.Length; i++) if (doubleCountArr[i] > doubleCountArr[maxIndex]) maxIndex = i; return maxIndex + 1; } }// class Dice