3个不稳定版本
0.2.1 | 2020年12月30日 |
---|---|
0.2.0 | 2020年12月30日 |
0.1.1 | 2020年12月27日 |
0.1.0 |
|
#10 in #u128
7KB
83 行
binary_ok
您可以使用实数和整数,按需使用。
将以下内容添加到您的 cargo.toml 文件中以使用此crate
[dependencies]
binary_ok = "0.2.1"
如果您不使用 f32 或 f64,只需使用 u128 版本的函数,这样您就可以在流中执行一些数学运算。
use::binary_ok;
binary_ok::u128_to_binary(number: &u128);
binary_ok::u128_to_decimal(number: &u128);
binary_ok::to_binary(number: &f64);
binary_ok::to_decimal(number: &f64);
u128_to_binary() 返回一个 u128 值
u128_to_decimal() 返回一个 u128 值
to_binary() 返回一个位字符串(由于IEEE 754标准和Rust处理浮点数的方式,据我所知,无法使用parse()方法以高精度将字符串转换为f32或f64的十进制表示)
to_decimal() 返回一个 f64 十进制数字
use::binary_ok;
let decimal_number: u128 = 87654884988;
println!("Decimal number for conversion: {}", decimal_number);
let binary_number: u128 = binary_ok::u128_to_binary(decimal_number);
println!("Binary conversion result: {}", binary_number);
let to_decimal_again: u128 = binary_ok::u128_to_decimal(binary_number);
println!("To decimal again: {}", to_decimal_again);
输出
转换用的十进制数字:87654884988
二进制转换结果:1010001101000101000110110011001111100
再次转换为十进制:87654884988
let x: f64 = 1110101.0;
let y: f64 = 1001101.11;
let result: String = binary_ok::to_binary(&(binary_ok::to_decimal(&x) + binary_ok::to_decimal(&y)));
println!("{}", result);
输出
11000010.11