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

Формула программиста
основатель — Волосатов Евгений Витольдович
Видео про Архитектуру Шахматного клиент-сервера.

Теория ООП / Интерфейс. VIP. Квадратики тоже хотят играть.

  • На этом уроке мы создадим новый класс Box.
    Квадратики тоже хотят играть в эту игру,
    и просят их научить. Пока они ещё не умеют
    ловить, но уже смогут отображаться и передвигаться.

    Полезные ссылки для написания функции Поймал:
    http://xdan.ru/how-to-check-intersect-two-rectangles.html
    http://stackoverflow.com/questions/306316/determine-if-two-rectangles-overlap-each-other
  • Дата отправки отчёта: 12 февраля 2016 г.
  • Задание выполнено: за 41 мин.
  • Чему научился: Думать как каракал.
  • Что было сложным: Сделать обработку прикосновений прямоугольников.. она и сейчас не работает :)
  • Комментарии: Зеленая ограда.
  • Оценка видео-уроку:
Отчёт от 6696 за Теория ООП / Интерфейс. VIP. Квадратики тоже хотят играть.




Оцени работу

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

24. Олюшка
Олюшка
ответить
→  Владимир Борисенко  # Теория ООП / Интерфейс. VIP. Квадратики тоже хотят играть. / 2016-02-12 17:40

Владимир, я уверена что у тебя они заработают и заиграют! :)


1. Евгений Волосатов
Евгений Волосатов
ответить

4467. Alcatraz
Alcatraz
ответить
→  Владимир Борисенко  # Теория ООП / Интерфейс. VIP. Квадратики тоже хотят играть. / 2016-02-12 09:08

Если я правильно понял, то вот этот код должен давать результат пересекаются ли прямоугольники:
var intersects = function ( a, b ) {
  return ( a.y < b.y1 || a.y1 > b.y || a.x1 < b.x || a.x > b.x1 );
}
На сишарп его можно переписать так:
// Структура для сохранения координат прямоугольника
struct Rect{
public int x;
public int y;
public int x1;
public int y1;
public Rect(int x, int y, int x1, int y1)
{
this = new Rect();
this.x = x;
thix.y = y;
this.x1 = x1;
this.y1 = y1;
}
}
// Передаем в функцию два прямоугольника и она возвращает логический результат пересекаются ли они
public bool IsCross(Rect a, Rect b){
  return ( a.y < b.y1 || a.y1 > b.y || a.x1 < b.x || a.x > b.x1 );
}



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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Добавлять новый класс с интерфейсом.
Трудности: Найти ошибку в строке foreach (Box obj in game.gamers) arena.Show(box);
Как то странно конструкторы сделаны. Нафига так? public Box(int sx, int sy) : this(x, y, w, h) { this.sx = sx; this.sy = sy; } public Box(int x, int y, int w, int h, int sx, int sy) { box = new Rectangle(x, y, w, h); color = Color.Green; } По моему логичнее было бы public Box(int sx, int sy) : this(x, y, w, h) { this.sx = sx; this.sy = sy; } public Box(int x, int y, int w, int h) { box = new Rectangle(x, y, w, h); color = Color.Green; }
Научился: проверять пересекаемость квадратов
Трудности: переделать свои доработки на работу с квадратами
отлично ,пора заканчивать курс. Идем дальше