From 2b5af0c09be943ba3c9f714f2d1d18dde2c6e280 Mon Sep 17 00:00:00 2001 From: shimun Date: Thu, 31 Oct 2019 15:43:35 +0100 Subject: [PATCH] variable board size --- src/main.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index 0b1bbe2..cbeee2a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -127,11 +127,11 @@ fn main() { for s in &[State::X, State::O] { loop { let (x, y) = loop { - print!("{}, your move: (x, y) ", s); + print!("{}, your move: (x y) ", s); io::stdout().flush(); input.clear(); stdin.read_line(&mut input); - let parts = input.trim().split(",").collect::>(); + let parts = input.trim().split(" ").collect::>(); match (parts[0].parse::(), parts[1].parse::()) { (Err(_), _) => eprintln!("X is not an valid int"), (_, Err(_)) => eprintln!("Y is not an valid int"), @@ -154,6 +154,9 @@ fn main() { _ => eprintln!("({}, {}) is already occupied! Try again", x, y), } } + if let Some(winner) = board.winner() { + break; + } println!("{}", &board); } };