Miscellaneous
Big integers
Calculation for integers exceeding 128 bits are possible with BigInt
.
use num::bigint::{BigInt, ToBigInt};
fn factorial(x: i32) -> BigInt {
if let Some(mut factorial) = 1.to_bigint() {
for i in 1..=x {
factorial = factorial * i;
}
factorial
}
else {
panic!("Failed to calculate factorial!");
}
}
fn main() {
println!("{}! equals {}", 100, factorial(100));
}