equation_generator/equation/
basic.rs

1use 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}