equation_generator/equation/
basic.rs1use std::ops::Range;
2use serde::{Serialize, Deserialize};
3
4#[derive(Serialize, Deserialize)]
5pub struct TwoFactor {
6 pub a: usize,
7 pub b: usize,
8}
9
10impl TwoFactor {
11 pub fn new(factor: (usize, usize)) -> TwoFactor {
12 TwoFactor {
13 a: factor.0,
14 b: factor.1,
15 }
16 }
17}
18
19
20
21pub struct ThreeFactor<T> {
22 pub a: T,
23 pub b: T,
24 pub c: T,
25}
26
27
28pub fn generate_two_factor(amount: usize, range: Range<usize>) -> Vec<TwoFactor> {
29 let mut equation_list = Vec::new();
30
31 for _n in 0..amount {
32
33 let a = random_number::random_ranged(range.clone());
34 let b = random_number::random_ranged(range.clone());
35
36 let twofactor = TwoFactor::new((a, b));
37
38 equation_list.push(twofactor);
39 }
40
41 equation_list
42}