Browse Source

finished guessing game

jmelesky 7 years ago
parent
commit
8eb83ab0ba
1 changed files with 18 additions and 10 deletions
  1. 18 10
      guessing_game/src/main.rs

+ 18 - 10
guessing_game/src/main.rs

@@ -12,21 +12,29 @@ fn main() {
 
     let secret_number = rand::thread_rng().gen_range(1,101);
 
-    println!("The secret number is: {}", secret_number);
+    loop {
+        println!("Please input your guess.");
 
-    println!("Please input your guess.");
+        let mut guess = String::new();
 
-    let mut guess = String::new();
+        io::stdin().read_line(&mut guess)
+            .expect("Failed to read line");
 
-    io::stdin().read_line(&mut guess)
-        .expect("Failed to read line");
+        let guess:u32 = match guess.trim().parse() {
+            Ok(num) => num,
+            Err(_)  => continue
+        };
 
-    println!("You guessed: {}", guess);
+        println!("You guessed: {}", guess);
     
 
-    match guess.cmp(&secret_number) {
-        Ordering::Less    => println!("Too small!"),
-        Ordering::Greater => println!("Too big!"),
-        Ordering::Equal   => println!("You got it! You win!")
+        match guess.cmp(&secret_number) {
+            Ordering::Less    => println!("Too small!"),
+            Ordering::Greater => println!("Too big!"),
+            Ordering::Equal   => {
+                println!("You got it! You win!");
+                break;
+            }
+        }
     }
 }