Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nealfennimore/8770512 to your computer and use it in GitHub Desktop.
Save nealfennimore/8770512 to your computer and use it in GitHub Desktop.
phase 0 unit 2 week 1boggle class challenge
class BoggleBoard
attr_reader :board
def initialize(board = [["b", "r", "a", "e"],
["i", "o", "d", "t"],
["e", "c", "l", "r"],
["t", "a", "k", "e"]])
@board = board
end
def coordinates(x, y)
board[x][y]
end
def create_word(*coords)
coords.map { |coord| board[coord.first][coord.last]}.join("")
end
def get_row(row)
# your code here
board[row]
end
def get_col(col)
# your code here
board.map {|x| x[col]}
end
def get_diagonal(row, col)
board.map do |x|
p board[row][col]
row < (board.length - 1) ? row += 1 : break
col < (board.length - 1) ? col += 1 : break
end
end
end
dice_grid = [["b", "r", "a", "e"],
["i", "o", "d", "t"],
["e", "c", "l", "r"],
["t", "a", "k", "e"]]
boggle_board = BoggleBoard.new(dice_grid)
#puts boggle_board.inspect
p boggle_board.get_row(1) #=> ["i", "o", "d", "t"]
p boggle_board.get_col(1) #=> ["r", "o", "c", "a"]
p boggle_board.get_row(2) #=> ["e", "c", "l", "r"]
p boggle_board.get_col(2) #=> ["a", "d", "l", "k"]
p boggle_board.get_row(3) #=> ["t", "a", "k", "e"]
p boggle_board.get_col(3) #=> ["e", "t", "r", "e"]
puts boggle_board.create_word([2,1], [1,1], [1,2], [0,3]) #=> returns "code"
puts boggle_board.create_word([0,1], [0,2], [1,2]) #=> creates what california slang word? => rad
puts boggle_board.create_word([3,0], [3,1], [3,2], [3,3]) #=> take
puts boggle_board.create_word([0,0], [1,0], [3,0], [2,0]) #=> bite
puts boggle_board.coordinates(0,1) == "r" # returns boggle_board[row_number][column_number] => true
puts boggle_board.coordinates(2,1) == "c" #=> should be true
puts boggle_board.coordinates(3,3) == "e" #=> should be true
puts boggle_board.coordinates(2,3) == "x" #=> should be false
puts boggle_board.coordinates(3,2) #=> k
boggle_board.get_diagonal(0,0) #=> "bole"
boggle_board.get_diagonal(1,0) #=> "ick"
boggle_board.get_diagonal(0,1) #=> "rdr"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment