1 unstable release
0.1.0 | Nov 30, 2024 |
---|
#407 in Math
153 downloads per month
10KB
165 lines
Sum_Range
This crate provides a trait for efficiently calculating the sum of numbers within a range, including support for odd and even number sums.
Supported Range Types
Range
RangeInclusive
RangeTo
RangeToInclusive
Trait Methods
sum_range
: Calculates the sum of all numbers in the range.sum_odd_range
: Calculates the sum of all odd numbers in the range.sum_even_range
: Calculates the sum of all even numbers in the range.
Note
- For
RangeTo
andRangeToInclusive
, signed integer types are not supported.
Usage
use sum_range::SumRange;
assert_eq!((1..11).sum_range(), 55u8);
assert_eq!((0..=12).sum_range(), 78u8);
assert_eq!((-10..12).sum_odd_range(), 11i16);
assert_eq!((-5..=5).sum_even_range(), 0i32);
License
This crate is licensed under the MIT license.
lib.rs
:
This crate provides a trait for calculating the sum of numbers in a range.
The trait is implemented for the following types:
The trait provides three methods:
The methods calculate the sum of the numbers in the range, the sum of the odd numbers in the range, and the sum of the even numbers in the range, respectively.
NOTE: For RangeTo
and RangeToInclusive
, signed integer types are not supported.
Examples
use sum_range::SumRange;
assert_eq!((1..11).sum_range(), 55u8);
assert_eq!((0..=12).sum_range(), 78u8);
assert_eq!((-10..12).sum_odd_range(), 11i16);
assert_eq!((-5..=5).sum_even_range(), 0i32);
Dependencies
~550KB
~11K SLoC