Мы продолжаем эксперименты с самым популярным и востребованным шаблоном проектирования: "Итератор". На этом уроке мы реализуем алгоритм перемешивания колоды. Для этого мы воспользуемся нестандартным способом, который напоминает игру: "Что? Где? Когда?".
Дата отправки отчёта:
18 ноября 2019 г.
Задание выполнено: за
1 час. 7 мин.
Чему научился:
вариант тасовки карт такой придумал я) Выполнять проверку на соседство номеров карт и если они отличаются не более, чем на 1, то менять их местами Для этого придется использовать промежуточные переменные, но в итоге сам массив будет уже содержать тасованные карты
Давим клаву за ради опыта. Куря интернет, готов сформулировать, а там и сам лучше пойму, отношения между классами. Чтобы использовать метод из другого класса, чтобы его функционал стал доступен, в том классе, где надо его использовать пиши следующий оператор: Имя_класса_где_расположен_желаемый метод (или поле, но сейчас сконцентрируемся на методе ибо он чего-то может делать) Затем через пробел название экземпляра которое ты дашь этой ссылке на нужный нам класс Равно = то есть знак присвоения (не два равно == это уже будет не присвоение, а сравнение на эквивалентность) После равно пишем нью Имя_класса_где_расположен_желаемый метод Затем открыть и закрыть круглые скобки Точка с запятой - окончание оператора ЗЫ Если надо передавать аргументы - в скобках указать то, что надо до кучи передать Если ничего не надо - в круглых скобках тупо пусто оставь. Несложно.
Отчёт оценивали: 22309. Xa4_Xakum+1791. Валерий Жданов+122883. Илья+12146. Иван+122641. Ian022133. ES35+118842. Степан+123309. Glebov Alexandr Leonidovich07119. Новопашин Владимир+1
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Свой вариант перемешивания это классическая перестановка рандомных элементов между собой при проходе по массиву до выдачи карт. Первый скрин это предложенный метод волчка, второй скрин это классическое перемешивание методом перестановки.
Научился: Алгоритму выборку аля "Что? Где? Когда?" Вынес константы в класс Program() и сделал их статичными
Оптимизировал класс Cards(), теперь данные о размере колоды берутся на основе количества карт и мастей.
Так же и при формировании колоды вместо числа использована константа.
Названия карт и мастей теперь на русском языке =)
з.ы.
Можно было использовать список и выдёргивая оттуда рандомную карту в пределах размера текущего списка, после чего удалять выбранную карту и проверять, не равен ли список нулю, этот подход был бы более ООП =)
Но вариант с массивом работает быстрее!!!