3 个版本
0.1.2 | 2023年6月26日 |
---|---|
0.1.1 | 2023年6月2日 |
0.1.0 | 2023年5月29日 |
#1284 在 开发工具
每月下载量 29
31KB
505 行
用于高效开发和计算大数的特性和函数
示例
use libnum::Numeric;
fn main() {
// Computing large number of addition, subtraction, multiplication, and division
let a = "1515454551515151411651651515151665959595956262626265655555599999999999555555555552222222222666666666666663333".to_string();
let b = "9898989898989898989898989898978787979979797979797979797979797979".to_string();
println!("{}", a.add(b.clone()).unwrap());
除法
let c = "15454545151513193895151.4215".to_string();
let d = "1545151514151515.313".to_string();
println!("{}", c.div(d.clone()).unwrap());
乘法
let c = "15454545151513193895151.4215".to_string();
let d = "1545151514151515.313".to_string();
println!("{}", c.mul(d.clone()).unwrap());
减法
let c = "15454545151513193895151.4215".to_string();
let d = "1545151514151515.313".to_string();
println!("{}", c.sub(d.clone()).unwrap());
加法
let c = "15454545151513193895151.4215".to_string();
let d = "1545151514151515.313".to_string();
println!("{}", c.add(d.clone()).unwrap());
异或操作
let c = "15454545151513193895151".to_string();
let d = "15".to_string();
println!("{}", c.xor_operation(d.clone()).unwrap());
或操作
let c = "15454545151513193895151".to_string();
let d = "15".to_string();
println!("{}", c.or_operation(d.clone()).unwrap());
与操作
let c = "15454545151513193895151".to_string();
let d = "15".to_string();
println!("{}", c.and_operation(d.clone()).unwrap());
左移操作
let c = "15454545151513193895151".to_string();
let d = 15;
println!("{}", c.right_shift(d).unwrap());
左移操作
let c = "15454545151513193895151".to_string();
let d = 15;
println!("{}", c.left_shift(d).unwrap());
与操作
let c = "15454545151513193895151.4215".to_string();
let d = "15.313".to_string();
println!("{}", c.mod_operation(d.clone()).unwrap());
对数
let c = "15454545151513193895151.4215".to_string();
let d = "15.313".to_string();
println!("{}", c.log(d.clone()).unwrap());
反正切
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.atan().unwrap());
反余弦
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.acos().unwrap());
反正切
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.asin().unwrap());
正切
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.tan().unwrap());
余弦
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.cos().unwrap());
正弦
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.sin().unwrap());
以10为底的对数
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.log10().unwrap());
以2为底的对数
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.log2().unwrap());
指数
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.exp().unwrap());
平方根
let c = "15454545151513193895151.4215".to_string();
println!("{}", c.sqrt().unwrap());
幂
let c = "15454545151513193895151.4215".to_string();
let d = "1545151514151515.313".to_string();
println!("{}", c.pow(d.clone()).unwrap());
依赖项
~6MB
~200K SLoC