summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-05-30 11:56:29 -0600
committermo khan <mo@mokhan.ca>2025-05-30 11:56:29 -0600
commitf7b9e8ffd8164474b08e0c6ee20edf2fb1b2d279 (patch)
tree3c7b1931488bbdab4466c694a535052d832744de /src
parenta4a1c532c5548471070d175ba33a489c9de00625 (diff)
feat: compare guess with random number
Diffstat (limited to 'src')
-rw-r--r--src/main.rs20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs
index f9464ce..bcff184 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -1,10 +1,26 @@
+use rand::Rng;
+use std::cmp::Ordering;
+use std::io;
+
fn main() {
println!("Guess the number!");
+ let secret_number = rand::rng().random_range(1..=100);
+
+ println!("The secret number is: {secret_number}");
println!("Please input your guess");
let mut guess = String::new();
- std::io::stdin()
+ io::stdin()
.read_line(&mut guess)
.expect("failed to read line");
- println!("You guessed: {}", guess);
+
+ let guess: u32 = guess.trim().parse().expect("Please type a number!");
+
+ println!("You guessed: {guess}");
+
+ match guess.cmp(&secret_number) {
+ Ordering::Less => println!("Too small!"),
+ Ordering::Greater => println!("Too big!"),
+ Ordering::Equal => println!("You win!"),
+ }
}