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

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

Микроигры / Игра 15 - Алгоритм

  • Завершаем создание игры Пятнашки.
    На втором уроке мы напишем класс логики игры, в котором опишем матрицу для хранения чисел на кнопках и реализуем основные методы: start, shift, check_numbers и другие.
  • Дата отправки отчёта: 24 февраля 2015 г.
  • Задание выполнено: за 2 час. 30 мин.
  • Что было сложным: Разобраться с логикой программы
  • Комментарии: Все замечательно. Посмотрел применение модификатора out.
  • Оценка видео-уроку:
Отчёт от 2773 за Микроигры / Игра 15 - Алгоритм




Оцени работу

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

  • Отчёт оценивали:
    6452Кирилл Шмойлов+1  

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




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

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

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

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


Научился: Я не узнал ничего нового
Всё отлично! Столько всего надо будет пройти :~) Потратил кучу времени что бы пройти игру. Просто я в пятнашки очень плохо играю :~) Для этого и был сделан уровень сложности :~) Проходил на Normal :~)


Научился: работать с координатами сетки. поменял возвращаемое значение у метода game,shift c void на bool. public bool shift (int position) { int x, y; position_to_coords(position, out x, out y); if (Math.Abs(spase_x - x) + Math.Abs(spase_y - y) != 1) // return false; map[spase_x, spase_y] = map[x, y]; map[x, y] = 0; spase_x = x; spase_y = y; return true; } и теперь после каждого нажатие на кнопки проверяется условие если условие выполнено то и функция выполнила свою действие и дает добра на перебор все клеток private void button1_Click(object sender, EventArgs e) { int position = Convert.ToInt16(((Button)sender).Tag); if (game.shift(position)) refresh(); if (game.check_numbers()) { MessageBox.Show("Вы победили", "Победа"); start_game(); } } на внешний вид программы не повлияло. но скорость в обработки операций прибавилось.