Создать производный класс от колоды — пасьянс, в котором выбираются по три карты - C#
Формулировка задачи:
Создать карту и использую композицию - колоду карт. Конструкторы колоды должны инициализировать колоду упорядочено и случайным образом. Создать производный класс от колоды - пасьянс, в котором выбираются по три карты и, если две крайние одного цвета, то их выбрасывают. Всю колоду проходят три раза.
помогите написать программу please
Решение задачи: «Создать производный класс от колоды — пасьянс, в котором выбираются по три карты»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication3 { class Program { static void Main(string[] args) { CardDeck deck = new CardDeck(10,true); } } //Класс Карта public class Card { public string cardSuite { get; set; } } //Класс Колода public class CardDeck:IEnumerable<Card> { List<Card> cardList; Random rand; //Конструктор //если в параметре ordered true, заполнение колоды упорядочено //в противном случае случайно public CardDeck(int size, bool ordered) { cardList = new List<Card>(); rand = new Random(); int index = 0; if (!ordered) { for (int i = 0; i < size; i++) { cardList.Add(new Card() { cardSuite = Enum.GetName(typeof(suit), rand.Next(0, 4)) }); } } else { for (int i = 0; i < size; i++) { cardList.Add(new Card() { cardSuite = Enum.GetName(typeof(suit), index) }); index++; index = (index > 3) ? 0 : index; } } } public IEnumerator<Card> GetEnumerator() { return cardList.GetEnumerator(); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return cardList.GetEnumerator(); } } //Перечисление Масть public enum suit:int { Spades = 0, //Пики Hearts = 1, //Червы Clubs = 2, //Трефы Diamonds = 3 //Бубны } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д