mirror of
https://github.com/LukasKalbertodt/programmieren-in-rust.git
synced 2024-11-17 18:48:56 +01:00
29 lines
517 B
Rust
Executable File
29 lines
517 B
Rust
Executable File
use std::str::FromStr;
|
|
use std::fmt::Display;
|
|
|
|
fn main() {
|
|
// let x = read::<usize>();
|
|
let x: usize = read();
|
|
println!("{}", x);
|
|
|
|
}
|
|
|
|
fn read<T>() -> T
|
|
where T: FromStr,
|
|
T::Err: Display
|
|
{
|
|
use std::io;
|
|
|
|
loop {
|
|
let mut s = String::new();
|
|
io::stdin()
|
|
.read_line(&mut s)
|
|
.expect("unexpected io error");
|
|
|
|
match s.trim_right().parse() {
|
|
Ok(value) => return value,
|
|
Err(e) => println!("error: {}", e),
|
|
}
|
|
}
|
|
}
|