На этом уроке мы реализуем правила движения чёрных пешек по аналогии с белыми.
Для начала мы перенесём общую проверку из функций is_correct_*_pawn_move() в функцию is_correct_pawn_move().
Доработаем функцию is_pawn_passant(). Объединим функции is_correct_*_pawn_move() в общую функцию is_correct_sign_pawn_move().
Дата отправки отчёта:
25 января 2017 г.
Задание выполнено: за
1 час. 00 мин.
Чему научился:
дoрaботал функцию is_pawn_passant(). Рeализoвать общую фyнкцию is_correct_sign_pawn_move().
Что было сложным:
Не бфло сложностей
Комментарии:
Хочу обратить внимание, что в некоторых местах здесь приведен мой вариант кода. в функции is_pawn_passant(sx, sy, dx, dy, sign) строка if (sy!=4)return false; для белых заменена на универсальную: if (sy!=3.5+0.5*sign)return false;
Научился: Повторил рефакторинг Трудности: Превращение нескольких функций в одну Способ хороший, конечно, но каша в голове часто от таких превращений. Кроме того, в уроке при взятии чёрной пешкой на проходе не снимается белая :(
Научился: теперь и чёрные пешки ходят как положено =)
по мне добавить лишний параметр в функцию и таким образом избавиться от еще одной такой же это проще, чем разделять её на несколько мелких =)