Number-Based is an attempt of mine to make working with number bases simple.
This crate is built around the NumberBase struct.
Examples:
```rust use number_based;
fn main() { let mut number = numberbased::NumberBase::fromstring(7863, "NUMBERBASED").unwrap();
// convert number to base 10
number.convert(10);
// prints value 20781774882369576414324066149192513674771
println!("{}", number.display());
}
rust
use number_based;
fn main() { let mut number = numberbased::NumberBase::fromstring(10, "120387517860123746975").unwrap();
// conver number to base 10000
number.convert(10000);
// prints value "1ࡒᶹ⇵ঢᮛ"
println!("{}", number.display());
} ```
```rust use number_based;
fn main() { let mut number1 = numberbased::NumberBase::fromstring(30000, "ð䧈炙㞈榻").unwrap(); // 120387517860123746975 in base 10
let mut number2 = number_based::NumberBase::from_string(30000, "20").unwrap();
// 60000 in base 10
let (quotient, remainder) = number1.divide(number2);
println!("quotient: {} ", quotient.display());
println!("remainder: {}", remainder.display());
// prints the following:
// quotient: ¦┒㡺嚊 (2006458631002062 in base 10)
// remainder: 榻 (26975 in base 10)
} ```
```rust use number_based;
fn main() { let number1 = numberbased::NumberBase::fromstring(36, "LIUBWALI").unwrap();
let number2 = number_based::NumberBase::from_string(32, "20ABC").unwrap();
// NumberBase can be added just like any other number type!
// Do note however that the resulting NumberBase will be of the same base as the first
// NumberBase.
//In this instance res.base would be of base 36 NOT 32!
let res = number1 + number2;
assert_eq!(res.base(), 36);
// prints "LIUD5GYA"
println!("{}", res.display());
} ```
apache 2.0
See LICENSE document for complete license.