みさご解体新書

チェス盤のパリティ判定

コード例

C++

// (x, y)の位置が白マスか?
bool is_white_cell(int x, int y) {
  return (x + y) % 2 == 0;
}

// (a, b)と(c, d)のマス色は同じか?
bool equal_color(int a, int b, int c, int d) {
  return (a + b + c + d) % 2 == 0;
}

TypeScript

// (x, y)の位置が白マスか?
function isWhiteCell(x: number, y: number): boolean {
  return (x + y) % 2 === 0;
}

// (a, b)と(c, d)のマス色は同じか?
function equalColor(a: number, b: number, c: number, d: number): boolean {
  return (a + b + c + d) % 2 === 0;
}