Skip to content
Snippets Groups Projects
Commit b64d652a authored by Michael Hauspie's avatar Michael Hauspie
Browse files

Add a Board type

parent 88a5ae8a
No related branches found
No related tags found
No related merge requests found
......@@ -4,6 +4,9 @@ enum Square {
Circle,
}
struct Board {
board: [Square; 9],
}
fn square_to_char(s: &Square) -> char {
match s {
......@@ -13,13 +16,13 @@ fn square_to_char(s: &Square) -> char {
}
}
fn display(board: [Square; 9]) {
fn display(board: Board) {
for row in 0..3 {
println!(
" {} | {} | {}",
square_to_char(&board[row * 3]),
square_to_char(&board[row * 3 + 1]),
square_to_char(&board[row * 3 + 2])
square_to_char(&board.board[row * 3]),
square_to_char(&board.board[row * 3 + 1]),
square_to_char(&board.board[row * 3 + 2])
);
if row == 0 || row == 1 {
println!("---+---+---");
......@@ -28,17 +31,19 @@ fn display(board: [Square; 9]) {
}
fn main() {
let board = [
Square::Empty,
Square::Cross,
Square::Circle,
Square::Empty,
Square::Empty,
Square::Empty,
Square::Empty,
Square::Empty,
Square::Empty,
];
let board = Board {
board: [
Square::Empty,
Square::Cross,
Square::Circle,
Square::Empty,
Square::Empty,
Square::Empty,
Square::Empty,
Square::Empty,
Square::Empty,
],
};
display(board);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment