From 7e8ee5ed9cad6484e9f13f81731b102ced58402e Mon Sep 17 00:00:00 2001
From: Adam Carpenter <gitlab@53hor.net>
Date: Tue, 9 Jul 2019 15:14:04 -0400
Subject: Init.

---
 rust-book/guessing-game/src/main.rs | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)
 create mode 100755 rust-book/guessing-game/src/main.rs

(limited to 'rust-book/guessing-game/src')

diff --git a/rust-book/guessing-game/src/main.rs b/rust-book/guessing-game/src/main.rs
new file mode 100755
index 0000000..38dd28d
--- /dev/null
+++ b/rust-book/guessing-game/src/main.rs
@@ -0,0 +1,36 @@
+use std::io;
+use std::cmp::Ordering;
+use rand::Rng;
+
+fn main() {
+    println!("Guess the number!");
+
+    let secret_number = rand::thread_rng().gen_range(1, 101);
+    //println!("The secret number is: {}", secret_number);
+
+    loop {
+        println!("Enter a guess.");
+
+        let mut guess = String::new();
+
+        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);
+
+        match guess.cmp(&secret_number) {
+            Ordering::Less => println!("Too small!"),
+            Ordering::Greater => println!("Too big!"),
+            Ordering::Equal => {
+                println!("You win!");
+                break;
+            }
+        }
+    }
+
+}
-- 
cgit v1.2.3