Guess the number/With feedback: Difference between revisions

→‎{{header|Rust}}: updated for updated rand library
m (→‎gui version: added libheader)
(→‎{{header|Rust}}: updated for updated rand library)
Line 3,599:
=={{header|Rust}}==
{{libheader|rand}}
<lang rust>use stdrand::io::stdinRng;
use randstd::{Rng, thread_rng}cmp::Ordering;
use std::io;
 
const LOWEST: isizeu32 = 1;
extern crate rand;
const HIGHEST: isizeu32 = 100;
 
const LOWEST: isize = 1;
const HIGHEST: isize = 100;
 
fn main() {
let mut rngsecret_number = rand::thread_rng().gen_range(1..101);
 
println!("I have chosen my number between {} and {}. YouGuess knowthe what to donumber!", LOWEST, HIGHEST);
 
loop {
println!("Please input your guess.");
let number: isize = rng.gen_range(LOWEST, HIGHEST + 1);
 
let mut num_guessesguess = 0String::new();
 
loop {io::stdin()
println!("I have chosen my number between {} and {}. You know what to do", LOWEST, HIGHEST);
let res = stdin().read_line(&mut lineguess);
.expect("Failed to read line");
 
let guess: u32 = match guess.trim().parse() {
loop {
num_guessesOk(num) +=> 1;num,
Err(_) => continue,
};
 
println!("You guessed: {}", guess);
let mut line = String::new();
let res = stdin().read_line(&mut line);
let input: Option<isize> = res.ok().map_or(None, |_| line.trim().parse().ok());
 
match inputguess.cmp(&secret_number) {
NoneOrdering::Less => println!("numbersToo only, pleasesmall!"),
Ordering::Greater => println!("Too Some(nbig!") if n == number => {,
Ordering::Equal => {
println!("you got it in {} tries!", num_guesses);
println!("You breakwin!");
}break;
Some(n) if n < number => println!("too low!"),
Some(n) if n > number => println!("too high!"),
Some(_) => println!("something went wrong")
}
}
}
}</lang>
<pre>I have chosen my number between 01 and 100. YouGuess knowthe what to donumber!
Please input your guess.
5
You guessed: 5
Too small!
Please input your guess.
50
You guessed: 50
too high!
Too small!
25
Please input your guess.
too high!
80
12
You guessed: 80
too low!
Too big!
18
Please input your guess.
too low!
67
21
You guessed: 67
too low!
Too big!
23
Please input your guess.
you got it in 6 tries!</pre>
57
You guessed: 57
Too small!
Please input your guess.
63
You guessed: 63
Too small!
Please input your guess.
65
You guessed: 65
Too small!
Please input your guess.
66
You guessed: 66
You win!</pre>
 
=={{header|Scala}}==
Anonymous user