calculator_functions/
lib.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
pub mod calculator_functions{
    pub mod basic_functions{
        pub fn add(x:i32,y:i32) -> i32{
            x + y
        }

        pub fn subtract(x:i32,y:i32) -> i32{
            x - y
        }

        pub fn multiply(x:i32,y:i32) -> i32{
            x * y
        }

        pub fn divide(x:i32,y:i32) -> i32{
            x / y
        }

    }

    pub mod power_functions{
        pub fn square(x:i32) -> i32{
            x * x        
        }

        pub fn cube(x:i32) -> i32{
            x * x * x
        }

        pub fn power(x:i32,power:i32) -> i32{
            let mut rs = 1;
            let mut i = 1;
            while i <= power {
                rs = rs * x;
                i = i + 1;
            }
            rs
        }
    }

}