struct_math/
lib.rs

1pub struct Entities{
2    pub number1:f64,
3    pub number2:f64,
4    pub operation:String,
5}
6
7
8pub fn add(calculate:&Entities)->f64{
9    calculate.number2 + calculate.number2
10}
11
12pub fn sub(calculate:&Entities)->f64{
13    calculate.number1 - calculate.number2
14}
15pub fn mult(calculate:&Entities)->f64{
16    calculate.number1 * calculate.number2
17}
18pub fn div(calculate:&Entities)->f64{
19    calculate.number1 / calculate.number2
20}
21
22fn main() {
23    let event1 = Entities{number1:34.0,number2:32.0,operation:String::from("Addition")};
24
25    if event1.operation == "Addition"{
26        let result = add(&event1);
27        println!("The result is {}",result);
28    }
29
30
31    else if event1.operation == "Subtraction"{
32        let result = sub(&event1);
33        println!("The result is {}",result);
34    }
35
36    else if event1.operation == "Multiplication"{
37        let result = mult(&event1);
38        println!("The result is {}",result);
39    }
40    
41    else if event1.operation == "Division"{
42        let result = div(&event1);
43        println!("The result is {}",result);
44    }
45    else{
46        println!("Invalid input");
47    }
48}