Курсы по программированию

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Iterator / Iterator - BlackJack - Random

  • Мы продолжаем эксперименты с самым популярным
    и востребованным шаблоном проектирования: "Итератор".
    На этом уроке мы реализуем алгоритм перемешивания колоды.
    Для этого мы воспользуемся нестандартным способом,
    который напоминает игру: "Что? Где? Когда?".
  • Дата отправки отчёта: 18 ноября 2019 г.
  • Задание выполнено: за 1 час. 7 мин.
  • Чему научился: вариант тасовки карт такой придумал я)
    Выполнять проверку на соседство номеров карт и если они отличаются не более, чем на 1, то менять их местами
    Для этого придется использовать промежуточные переменные, но в итоге сам массив будет уже содержать тасованные карты
  • Оценка видео-уроку:
Отчёт от 17947 за Iterator / Iterator - BlackJack - Random


Отчёт от 17947 за Iterator / Iterator - BlackJack - Random




Оцени работу

 
Сохранить страницу:

17947. --
Dmitry Sinitsin
Dmitry Sinitsin
ответить
# Iterator / Iterator - BlackJack - Random / 2019-11-18 17:26

Давим клаву за ради опыта.
Куря интернет, готов сформулировать, а там и сам лучше пойму, отношения между классами.
Чтобы использовать метод из другого класса, чтобы его функционал стал доступен, в том классе, где надо его использовать пиши следующий оператор:
Имя_класса_где_расположен_желаемый метод (или поле, но сейчас сконцентрируемся на методе ибо он чего-то может делать)
Затем через пробел название экземпляра которое ты дашь этой ссылке на нужный нам класс
Равно =  то есть знак присвоения (не два равно ==  это уже будет не присвоение, а сравнение на эквивалентность)
После равно пишем нью Имя_класса_где_расположен_желаемый метод
Затем открыть и закрыть круглые скобки
Точка с запятой - окончание оператора
ЗЫ
Если надо передавать аргументы - в скобках указать то, что надо до кучи передать
Если ничего не надо - в круглых скобках тупо пусто оставь.
Несложно.


  • Отчёт оценивали:
    22309Xa4_Xakum+1   791Валерий Жданов+1   22883Илья+1   2146Иван+1   22641Ian0   22133ES35+1   18842Степан+1   23309Glebov Alexandr Leonidovich0   7119Новопашин Владимир+1  

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Свой вариант перемешивания это классическая перестановка рандомных элементов между собой при проходе по массиву до выдачи карт. Первый скрин это предложенный метод волчка, второй скрин это классическое перемешивание методом перестановки.


Научился: Алгоритму выборку аля "Что? Где? Когда?"
Вынес константы в класс Program() и сделал их статичными Оптимизировал класс Cards(), теперь данные о размере колоды берутся на основе количества карт и мастей. Так же и при формировании колоды вместо числа использована константа. Названия карт и мастей теперь на русском языке =) з.ы. Можно было использовать список и выдёргивая оттуда рандомную карту в пределах размера текущего списка, после чего удалять выбранную карту и проверять, не равен ли список нулю, этот подход был бы более ООП =) Но вариант с массивом работает быстрее!!!