math_crate/lib.rs
1
2//! # Math Crate
3//!
4//! 'Math Crate' is a collection of utilities to perfom simple
5//! math calculations.
6
7/// Adds numbers together.
8///
9/// Example
10///
11/// ```
12/// let num1 = 9;
13/// let num2 = 10;
14/// let answer = math_crate::add(num1, num2);
15/// assert_eq!(19);
16/// ```
17pub fn add(a: isize, b: isize) -> isize {
18 a + b
19}
20/// Subtracts numbers together.
21///
22/// Example
23///
24/// ```
25/// let num1 = 7;
26/// let num2 = 5;
27/// let answer = math_crate::subtract(num1, num2);
28/// assert_eq!(2);
29/// ```
30pub fn subtract(a: isize, b: isize) -> isize {
31 a - b
32}
33/// Multiplies numbers together.
34///
35/// Example
36///
37/// ```
38/// let num1 = 9;
39/// let num2 = 3;
40/// let answer = math_crate::multiply(num1, num2);
41/// assert_eq!(27);
42/// ```
43pub fn multiply(a: isize, b: isize) -> isize {
44 a * b
45}
46/// Divides numbers together.
47///
48/// Example
49///
50/// ```
51/// let num1 = 7.1;
52/// let num2 = 3.0;
53/// let answer = math_crate::divide(num1, num2);
54/// assert_eq!(2.366666666666667);
55/// ```
56pub fn divide(a: f64, b: f64) -> f64 {
57 a / b
58}
59/// Finds the remainder of the numbers together.
60///
61/// Example
62///
63/// ```
64/// let num1 = 11;
65/// let num2 = 2;
66/// let answer = math_crate::find_remainder(num1, num2);
67/// assert_eq!(1);
68/// ```
69pub fn find_remainder(a: isize, b: isize) -> isize {
70 a % b
71}
72
73#[cfg(test)]
74
75mod lib_tests {
76 use super::*;
77
78 #[test]
79 fn it_works() {
80 let result = divide(2.0, 2.0);
81 println!("Answer: {result}")
82 }
83}