diff options
| author | mo khan <mo@mokhan.ca> | 2025-05-30 12:07:15 -0600 |
|---|---|---|
| committer | mo khan <mo@mokhan.ca> | 2025-05-30 12:07:15 -0600 |
| commit | daee25d5946dfff688e5f61618cbd7323a3488ce (patch) | |
| tree | d53a4915e263b09447dfeae7b58e7f5fffa3f711 /src | |
| parent | f7b9e8ffd8164474b08e0c6ee20edf2fb1b2d279 (diff) | |
feat: allow infinite guesses
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.rs | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/src/main.rs b/src/main.rs index bcff184..2246f72 100644 --- a/src/main.rs +++ b/src/main.rs @@ -7,20 +7,26 @@ fn main() { 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(); - io::stdin() - .read_line(&mut guess) - .expect("failed to read line"); + loop { + println!("Please input your guess"); - let guess: u32 = guess.trim().parse().expect("Please type a number!"); + let mut guess = String::new(); + 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!"); - match guess.cmp(&secret_number) { - Ordering::Less => println!("Too small!"), - Ordering::Greater => println!("Too big!"), - Ordering::Equal => println!("You win!"), + 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; + } + } } } |
