diff --git a/en/src/basic-types/numbers.md b/en/src/basic-types/numbers.md index dc525d2..72d0a28 100644 --- a/en/src/basic-types/numbers.md +++ b/en/src/basic-types/numbers.md @@ -93,14 +93,19 @@ fn main() { ```rust,editable -// Replace ? with your answer +// Fill the blank to make it work fn main() { let x = 1_000.000_1; // ? let y: f32 = 0.12; // f32 let z = 0.01_f64; // f64 + assert_eq!(type_of(&x), "__".to_string()); println!("Success!"); } + +fn type_of(_: &T) -> String { + format!("{}", std::any::type_name::()) +} ``` 8. 🌟🌟 Make it work in two distinct ways diff --git a/solutions/basic-types/numbers.md b/solutions/basic-types/numbers.md index 307f0d1..25b3e5f 100644 --- a/solutions/basic-types/numbers.md +++ b/solutions/basic-types/numbers.md @@ -64,10 +64,17 @@ fn main() { 7. ```rust - fn main() { +fn main() { let x = 1_000.000_1; // f64 let y: f32 = 0.12; // f32 let z = 0.01_f64; // f64 + + assert_eq!(type_of(&x), "f64".to_string()); + println!("Success!"); +} + +fn type_of(_: &T) -> String { + format!("{}", std::any::type_name::()) } ``` @@ -140,4 +147,4 @@ fn main() { println!("1 << 5 is {}", 1u32 << 5); println!("0x80 >> 2 is 0x{:x}", 0x80u32 >> 2); } -``` \ No newline at end of file +```