Skip to content

Instantly share code, notes, and snippets.

@JoshCheek
Created June 11, 2018 22:13
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 JoshCheek/c3b021347b7b2f9ba68d980d053a4acd to your computer and use it in GitHub Desktop.
Save JoshCheek/c3b021347b7b2f9ba68d980d053a4acd to your computer and use it in GitHub Desktop.
Thinking through the structure of mastermind w/ Heather
def print_row(row)
guess = row[:guess]
print "|#{guess[0]}|#{guess[1]}|#{guess[2]}|#{guess[3]}| |\n"
end
def print_board(board)
print "---------------\n"
board[:rows].each do |row|
print_row(row)
end
print "-----------\n"
solution = board[:solution]
print "|#{solution[0]}|#{solution[1]}|#{solution[2]}|#{solution[3]}|\n"
print "-----------\n"
end
board = {
rows: [
{ guess: ["R", "R", "R", "R"], feedback: [nil, nil, nil, nil] },
{ guess: ["Y", "P", "P", "P"], feedback: ["B", "W", nil, nil] },
{ guess: ["P", "Y", "G", "B"], feedback: ["B", "B", "W", nil] },
{ guess: [nil, nil, nil, nil], feedback: [nil, nil, nil, nil] },
{ guess: [nil, nil, nil, nil], feedback: [nil, nil, nil, nil] },
{ guess: [nil, nil, nil, nil], feedback: [nil, nil, nil, nil] },
{ guess: [nil, nil, nil, nil], feedback: [nil, nil, nil, nil] },
{ guess: [nil, nil, nil, nil], feedback: [nil, nil, nil, nil] },
{ guess: [nil, nil, nil, nil], feedback: [nil, nil, nil, nil] },
{ guess: [nil, nil, nil, nil], feedback: [nil, nil, nil, nil] },
],
solution: ["P", "B", "G", "P"]
}
print_board(board)
board.print
# >> ---------------
# >> |R|R|R|R| |
# >> |Y|P|P|P| |
# >> |P|Y|G|B| |
# >> ||||| |
# >> ||||| |
# >> ||||| |
# >> ||||| |
# >> ||||| |
# >> ||||| |
# >> ||||| |
# >> -----------
# >> |P|B|G|P|
# >> -----------
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment