Guest User

Untitled

a guest
Apr 25th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.45 KB | None | 0 0
  1. use std::mem;
  2.  
  3. fn print(f: f32) {
  4. let i = unsafe { mem::transmute::<f32, i32>(f) };
  5. let s = format!("{:032b}", i);
  6.  
  7. let sign: String = s.chars().take(1).collect();
  8. let exponent: String = s.chars().skip(1).take(8).collect();
  9. let mantisse: String = s.chars().skip(9).take(23).collect();
  10. println!("{} {} {}: {:.2}", sign, exponent, mantisse, f);
  11. }
  12.  
  13. fn main() {
  14. for i in 1..10 {
  15. print(i as f32);
  16. print(-i as f32);
  17. }
  18. }
Add Comment
Please, Sign In to add comment