На этом уроке мы нарисуем пирамидку из доминошек. Для отображения каждой плашки используется Label. Label'ы мы будем создавать динамически, как в сказке.
Дата отправки отчёта:
1 июля 2016 г.
Задание выполнено: за
1 час. 00 мин.
Чему научился:
В C# оочень не хватает явных ссылочных типов данных
Что было сложным:
Изменить значение элемента массива не обращаясь к массиву напрямую
Комментарии:
• Мне из прошлого урока жутко не понравилась сортировка и двумерный массив, в которых мы всё пихали, так что я реализовал функцию GetPlateByNum, которая получает элемент массива с указанным номером (0-27 в нашем случае), кстати, интересная получилась задачка для 3-х часов ночи =) И нормально-таки перемешал доминошки (на скриншоте самая верхняя функция). И заменил массив на ступенчатый. Честно, не понимаю, чем его неудобно использовать (вы так говорили)? Почему вы так не делали? За одно и практика с таким типом массивов была бы и задачку по нахождению элемента массива в виде пирамидки по его порядковому номеру (для нормального перемешивания), да и алгоритм перемешивания массива пригодился бы (ну, может алгоритм - это сильно сказано, но менять рандомные доминошки местами 100 - точно не он)
• Кстати, пока это всё дело реализовывал, столкнулся с проблемой, что в C# не видно, хранится ли в переменной сам объект или ссылка на него, и это очень затрудняет написание кода.. Например: в переменных string, ArrayList, да и вообще любого класса храниться ссылка, а в bool. int и остальных struct - сам объект. Нужно какую-то статью на эту тему почитать...
• Зачем создавать две переменные plateWhdth и plateHeight, если есть такой тип данных, как Size, как раз для таких случаев и предназначенный?? • И зачем всё-таки вы в прошлом уроке делали protected методы, а не privat?
Всё это максим нужно для того, чтобы ты спрашивал, возмущался и начинал действовать, даже в 3 часа ночи. Если бы тут всё вылизано было - такого ажиотажа не дождались бы.
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Динамически создавать объекты на форме, в данном уроке, объекты Label. Трудности: Сложностей не было, интересная тема. Красиво сделано, весь код зависит от значения переменной maxPoints, корректно создает label's и добавляет на форму, магия)