JavaScript
grid = [
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
]
foo = function(x, y, num) {
if (grid[x][y] == num) return true;
if (grid[x + 1] && grid[x + 1][y] == num) return true;
if (grid[x + 2] && grid[x + 2][y] == num) return true;
if (grid[y + 1]) {
if (grid[x][y + 1] == num) return true;
if (grid[x + 1] && grid[x + 1][y + 1] == num) return true;
if (grid[x + 2] && grid[x + 2][y + 1] == num) return true;
}
if (grid[y + 2]) {
if (grid[x][y + 2] == num) return true;
if (grid[x + 1] && grid[x + 1][y + 2] == num) return true;
if (grid[x + 2] && grid[x + 2][y + 2] == num) return true;
}
return false;
}
alert(foo(1, 2, 3));
alert(foo(1, 2, 30));