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

Формула программиста
основатель — Волосатов Евгений Витольдович

Микроигры / Крестики-Нолики. Игра на двоих

  • Играл в крестики-нолики, мелом на асфальте?
    Я играл, и очень много, был непревзойдённым профессионалом
    в своём дворе, изучил все ходы-выходы в этой программе,
    и замахнулся на создание искусственного интеллекта! :)
    Игрушка не сложная, она отлично подходит для
    упражнения в программировании для программиста.
  • Дата отправки отчёта: 26 июня 2015 г.
  • Задание выполнено: за 10 час. 00 мин.
  • Чему научился: +50 к интеллекту и +20 к навыку работы с формами )
  • Что было сложным: Много сложностей, мозг себе окончательно сломал. Сперва, два раза переделывал, потому что не тем путем пошел, что бы реализовать правильно меню . Вспомнил урок, где мы наши этапы разбивали на статусы, и после каждого действия присваивали и запускали определенный статус, вот после такой реализации пошло как по маслу. Но потом запутался в большом количестве кода )) Когда комп выделывался и выигрывал досрочно, трудно было найти проблему. Короче пару бессонных  ночей и игрушка получилась на славу ))
  • Комментарии: Спасибо за гениальную подачу материала!
  • Архив проекта: Ссылка доступна после самостоятельного выполнения этого урока
  • Оценка видео-уроку:
Отчёт от 4958 за Микроигры / Крестики-Нолики. Игра на двоих


Отчёт от 4958 за Микроигры / Крестики-Нолики. Игра на двоих




Оцени работу

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

4958. Edgard Loyter
Edgard Loyter
ответить
→  Иван  # Наноигры / VIP - Крестики-Нолики / 2015-06-27 00:42

Спасибо за высокую оценку )) В фотошопе и правда большую часть просидел ))


2146. Иван
Иван
ответить
→  Edgard Loyter  # Наноигры / VIP - Крестики-Нолики / 2015-06-27 00:41

ДА, это не пара бессонных ночей, такую красоту и за неделю не сделать. Тут только в фотошопе дня 3 сидеть. Очень понравилась игра


4958. Edgard Loyter
Edgard Loyter
ответить
→  looker  # Наноигры / VIP - Крестики-Нолики / 2015-06-27 00:40

Кстати, все реализовал в одной форме.


4972. looker
looker
ответить
→  Edgard Loyter  # Наноигры / VIP - Крестики-Нолики / 2015-06-27 00:28

Да, игра - просто класс! Такая красочная! Неужели - это просто на WinForms-ах сделал?:)


24. Оля
Оля
ответить
→  Edgard Loyter  # Наноигры / VIP - Крестики-Нолики / 2015-06-26 23:43

Ух ты, слов нету, это КРУТО!!! Молодец :)


1. Евгений Витольдович
Евгений Витольдович
ответить
→  Edgard Loyter  # Наноигры / VIP - Крестики-Нолики / 2015-06-26 23:26

С удовольствием поиграл, ты молодец!
Только тыкаю по кнопкам на угад, и долго не мог догадаться, что на вопрос нужно нажимать клавишу на клавиатуре :) всё мышкой, а тут на клаве.
Игра - просто прелесть!


5620. Алексей
Алексей
ответить
→  Edgard Loyter  # Наноигры / VIP - Крестики-Нолики / 2015-06-26 23:18

Классный UI, выглядит шикарно!


  • Отчёт оценивали:
    4958Edgard Loyter+1  

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




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

Ты в любой момент сможешь отписаться от рассылки.
Трудности: Очень много проблем было с возвратом аргументов типа 'out'. Эти функции делал по другому, не так как в уроке, чтоб не ругался приходилось инициализировать координаты функцией рандом. Тут конечно все работает, но в более сложных программах может не прокатить. Но возможность возвращать несколько аргументов из функции очень порадовала, потенциал огромен!
1. Ну во первых респект что доделали программу до конца и не упали духом) Но все же лучше было сделать перерывчик и склеить видео опосля) 2. Придумал способ инициализации картинок без массивов и прописывания каждой в тексте программы. Может кому пригодится: for (int i = 0 ; i < 3 ; i ++) for (int j = 0 ; j < 3 ; j++) { var C = tableLayoutPanel1.GetControlFromPosition(i, j); //берем ячейку из tablelayoutpanel var D = ((PictureBox)C); //присваеваем ей тип Picturebox D.Image = null; //обнуляем изображение } 3. Дополнительное задание сделал, начинаю понимать классы)
Научился: Использовать ref и out. Еще чуть лучше стал понимать, как использовать классы.
Трудности: Было интересно.
На первом скриншоте - программа сделанная по видео-курсу. Назвал я ее "Си шарпики". :) Обыграть ее смог, но далеко не с первого раза. Понравилось при просмотре видео-урока, как некоторые моменты можно сделать просто и красиво. Спасибо за урок - теперь я смог сравнить свой подход с вашим решением. На втором скриншоте - моя реализация крестиков-ноликов, которая была сделана месяца три назад. Побудили меня взяться за нее отчеты на этом сайте. Стало мне интересно, смогу ли я ее запрограммировать без подсказок и видео. Использовать классы я тогда точно не умел, так что тут все в одном. Алгоритм придумал какой-то жуткий, ушло, наверное дня 3 на реализацию! В итоге все же получилось - обыграть компьютер невозможно, только можно свести в ничью. Но, как и предсказывал Евгений Витольдович - играть-то оказалось не очень интересно, т.к. выиграть невозможно.