Add guessing game

This commit is contained in:
laurens 2020-05-01 18:56:21 +02:00
parent 2b617a5c4e
commit 8352d6f1c3
2 changed files with 47 additions and 0 deletions

10
guessing_game/Cargo.toml Normal file
View file

@ -0,0 +1,10 @@
[package]
name = "guessing_game"
version = "0.1.0"
authors = ["laurens <miers132@gmail.com>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
rand = "0.5.5"

37
guessing_game/src/main.rs Normal file
View file

@ -0,0 +1,37 @@
use std::io;
use std::cmp::Ordering;
use rand::Rng;
fn main() {
let min_number = 1;
let max_number = 100;
let secret_number = rand::thread_rng().gen_range(min_number, max_number + 1);
println!("Guess the number between [{}, {}] {}", min_number, max_number, secret_number);
loop {
let mut guess = String::new();
println!("Input guess:");
io::stdin().read_line(&mut guess).expect("Failed to read line");
let guess: u32 = match guess.trim().parse() {
Ok(num) => num,
Err(_) => {
println!("That ain't a number!");
continue;
}
};
println!("You guessed: {}", guess);
match guess.cmp(&secret_number) {
Ordering::Less => println!("Too small!"),
Ordering::Greater => println!("Too big!"),
Ordering::Equal => {
println!("Congrats, you did it!");
break;
}
}
}
}