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

Формула программиста
основатель — Волосатов Евгений Витольдович
C# Олимпиада из Простоквашино

Морской Бой / VIP. Анимированный кубик

  • На этом уроке мы создадим массив из кружков,
    они будут сначала двигаться случайно, похоже на бильярд.
    Дальше мы создадим правила для их передвижения
    и в конечном итоге реализуем анимированный игральный кубик.

    Задание:
    Нарисовать верхнюю сторону игрального кубика
    с шестью анимированными точками для смены чисел.
  • Дата отправки отчёта: 12 ноября 2015 г.
  • Задание выполнено: за 7 час. 20 мин.
  • Чему научился: Много чему (классы, конструкторы, наследование, многомерные массивы, перегрузка методов), но самое прикольное искать ошибку =)
  • Что было сложным: искать ошибку Оказалось Random.Next если от 0 до 7 то 0 тоже берется Method было (nr = rand.Next(0, 7); а надо было (1, 7);) поэтому в параметре number сидело отрицательное значение и хрясь: IndexOutOfRangeException
  • Комментарии: когда нашел - кайф
  • Оценка видео-уроку:
Отчёт от 5705 за Морской Бой / VIP. Анимированный кубик




Оцени работу

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

24. Олюшка
Олюшка
ответить
→  Андрей   # Наноигры / Анимированный кубик / 2015-11-12 21:48

Андрей, рада что ошибка нашлась и ты получил великолепные знания и опыт, к тому же кубик у тебя классный вышел! :)


5705. Андрей
Андрей
ответить
# Наноигры / Анимированный кубик / 2015-11-11 22:12

не могу найти ошибку


  • Отчёт оценивали:
    5705Андрей +1   1Евгений Волосатов+1   7645Александр Львович+1   6203Николай (nick27m)+1   6925Артём+1   24Олюшка+1   429Максим Базуев+1   8125admin" OR 1=1#0   2146Иван+1   459Сергей Сергеевич+1   6458Илья+1   5407Дмитрий 199+1   4853Alexander Sidorov+1   7795Вадим+1   7573Павел+1   6452Кирилл Шмойлов+1   4004Елена+1   4395Денис+1   7901Влад+1   7226Наталья+1   6987MichGar+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Закрашивать фигуры, работать с двумерными массивами
Трудности: Без подсказки из видео реализовать передвижение точек на нужные координаты. В итоге сделал как в видео.
замечаний нет.
Научился: Повторил работу с двумерными массивами в C#.
Трудности: Организовать работу программы с использованием классов.
Интересная тема, анимация завораживает. Понравилась идея представления значения числа на игральном кубике в виде двумерного массива. По началу, меня это не устраивало, реализовал в виде одномерного массива, но получилось так, что решение Евгения Витольдовича лучше отражает идею, по коду легче понять замысел. Однако синтаксис этих вложенных конструкций меня не устраивал. Поэтому добавил дополнительные переменные для выделения значений из массивов. Добавил классы NumberArena (абстракция числа на кубике), Drawer(рисовальщик) и GameLogic(внешний класс, который всем управляет и вызывается из формы). По ходу разработки было много сомнений. Конечно, синтаксически добавить класс не составляет никаких проблем, даже есть такой способ в рефакторинге "выделение класса" и прочие мелкие махинации с кодом. Проблемы были в моменте связи классов. И тут-то мне не нравилось, что классы знают много друг о друге и выполняют чужую работу. Не буду подробно описывать все эти моменты, в итоге удалил класс Drawer и передал его обязанности GameLogic. Своим полученным решением не доволен, но доволен тем, что появились идеи для дальнейших решений, которыми займусь в ближайшем будущем. Спасибо, Евгений Витольдович)