Step 3
Step3
比较猜测的数字和秘密数字
查看提示1
导入 std::cmp::Ordering, 并使用 match guess.cmp(&secret_number) 来按比较结果输出不同文字。
Step3 Answer 1
use std::io;
use std::cmp::Ordering;
use rand::Rng;
fn main() {
// ---snip---
println!("You guessed: {}", guess);
match guess.cmp(&secret_number) {
Ordering::Less => println!("Too small!"),
Ordering::Greater => println!("Too big!"),
Ordering::Equal => println!("You win!"),
}
}
这里编译还会有问题
查看提示2
注意要用 parse() 将 guess 转为数字再与 secret_number 进行比较.
Step3 Answer 2
// --snip--
let mut guess = String::new();
io::stdin().read_line(&mut guess)
.expect("Failed to read line");
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!"),
}