diff --git a/README.md b/README.md
index 0710cb0..b89d9dc 100644
--- a/README.md
+++ b/README.md
@@ -68,134 +68,134 @@ This creates the pdf `ws.pdf` in your current directory
## algebra
| Id | Skill | Example problem | Example Solution | Function Name | Kwargs |
|------|-------|-----------------|------------------|---------------|--------|
-| 11 | [Basic Algebra](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/basic_algebra.py) | 4x + 8 = 10 | 1/2 | basic_algebra | `maxVariable=10` |
-| 12 | [Logarithm](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/log.py) | log2(8) | 3 | log | `maxBase=3` `maxVal=8` |
-| 17 | [Integer Multiplication with 2x2 Matrix](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/multiply_int_to_22_matrix.py) | 6 * [[3, 3], [7, 2]] = | [[18,18],[42,12]] | multiply_int_to_22_matrix | `maxMatrixVal=10` `maxRes=100` |
-| 20 | [Midpoint of the two point](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/midpoint_of_two_points.py) | (-10,11),(-4,-12)= | (-7.0,-0.5) | midpoint_of_two_points | `maxValue=20` |
-| 21 | [Factoring Quadratic](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/factoring.py) | x^2+4x-21 | (x+7)(x-3) | factoring | `range_x1=10` `range_x2=10` |
-| 23 | [Solve a System of Equations in R^2](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/system_of_equations.py) | -x + 8y = -35, -4x + 5y = -32 | x = 3, y = -4 | system_of_equations | `range_x=10` `range_y=10` `coeff_mult_range=10` |
-| 24 | [Distance between 2 points](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/distance_two_points.py) | Find the distance between (-4, 5) and (-19, 11) | sqrt(261) | distance_two_points | `maxValXY=20` `minValXY=-20` |
-| 26 | [Linear Equations](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/linear_equations.py) | 3x + 6y = 18, -14x + 11y = -279 | x = 16, y = -5 | linear_equations | `n=2` `varRange=20` `coeffRange=20` |
-| 41 | [Intersection of Two Lines](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/intersection_of_two_lines.py) | Find the point of intersection of the two lines: y = 0/5x + 10 and y = -5/2x + 5 | (-2, 10) | intersection_of_two_lines | `minM=-10` `maxM=10` `minB=-10` `maxB=10` `minDenominator=1` `maxDenominator=6` |
-| 43 | [Cross Product of 2 Vectors](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/vector_cross.py) | [-2, -13, 7] X [9, -17, 8] = | [15, 79, 151] | vector_cross | `minVal=-20` `maxVal=20` |
-| 45 | [Simple Interest](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/simple_interest.py) | Simple interest for a principle amount of 2145 dollars, 7% rate of interest and for a time period of 7 years is = | 1051.05 | simple_interest | `maxPrinciple=10000` `maxRate=10` `maxTime=10` |
-| 46 | [Multiplication of two matrices](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/matrix_multiplication.py) | Multiply
and | | -65 | -37 | -9 | 34 |
| 88 | 26 | 18 | -2 |
| -55 | -38 | -6 | 41 |
| -53 | -44 | -4 | 53 |
| matrix_multiplication | `maxVal=100` `max_dim=10` |
-| 50 | [Quadratic Equation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/quadratic_equation.py) | Zeros of the Quadratic Equation 10x^2+51x+46=0 | [-1.17, -3.93] | quadratic_equation | `maxVal=100` |
-| 65 | [Multiplication of 2 complex numbers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/multiply_complex_numbers.py) | (-4+11j) * (5-9j) = | (79+91j) | multiply_complex_numbers | `minRealImaginaryNum=-20` `maxRealImaginaryNum=20` |
-| 72 | [Dot Product of 2 Vectors](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/vector_dot.py) | [-12, 11, 13] . [-4, 9, -13] = | -22 | vector_dot | `minVal=-20` `maxVal=20` |
-| 74 | [Inverse of a Matrix](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/invert_matrix.py) | Inverse of Matrix Matrix([[25, 98, 43], [11, 56, 70], [27, 19, 89]]) is: | Matrix([[1218/41533, -2635/41533, 1484/41533], [911/124599, 1064/124599, -1277/124599], [-1303/124599, 2171/124599, 322/124599]]) | invert_matrix | `SquareMatrixDimension=3` `MaxMatrixElement=99` `OnlyIntegerElementsInInvertedMatrix=False` |
-| 77 | [Determinant to 2x2 Matrix](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/int_matrix_22_determinant.py) | Det([[11, 84], [38, 41]]) = | -2741 | int_matrix_22_determinant | `maxMatrixVal=100` |
-| 78 | [Compound Interest](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/compound_interest.py) | Compound interest for a principle amount of 4581 dollars, 4% rate of interest and for a time period of 6 year is = | 5796.43 | compound_interest | `maxPrinciple=10000` `maxRate=10` `maxTime=10` |
-| 100 | [complex Quadratic Equation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/complex_quadratic.py) | Find the roots of given Quadratic Equation 9x^2 + 7x + 1 = 0 | simplified solution : ((-0.189, -0.589)), generalized solution : ((-7 + sqrt(13))/2*9, (-7 - sqrt(13))/2*9) | complex_quadratic | `prob_type=0` `max_range=10` |
-| 105 | [Combine Like terms](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/combine_like_terms.py) | 8x^4 + 4x^4 + 6x^1 + 9x^4 + 7x^5 + 10x^3 | 6x^1 + 10x^3 + 21x^4 + 7x^5 | combine_like_terms | `maxCoef=10` `maxExp=20` `maxTerms=10` |
-| 111 | [Expanding Factored Binomial](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/expanding.py) | (x-3)(x+4) | *x^2-3*x-12 | expanding | `range_x1=10` `range_x2=10` `range_a=10` `range_b=10` |
+| 11 | [Basic Algebra](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/basic_algebra.py) | 10x + 7 = 9 | 1/5 | basic_algebra | `maxVariable=10` |
+| 12 | [Logarithm](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/log.py) | log2(32) | 5 | log | `maxBase=3` `maxVal=8` |
+| 17 | [Integer Multiplication with 2x2 Matrix](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/multiply_int_to_22_matrix.py) | 2 * [[1, 5], [6, 8]] = | [[2,10],[12,16]] | multiply_int_to_22_matrix | `maxMatrixVal=10` `maxRes=100` |
+| 20 | [Midpoint of the two point](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/midpoint_of_two_points.py) | (-13,-16),(-11,7)= | (-12.0,-4.5) | midpoint_of_two_points | `maxValue=20` |
+| 21 | [Factoring Quadratic](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/factoring.py) | x^2+10x+21 | (x+7)(x+3) | factoring | `range_x1=10` `range_x2=10` |
+| 23 | [Solve a System of Equations in R^2](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/system_of_equations.py) | 10x + 9y = 25, 8x + 7y = 21 | x = 7, y = -5 | system_of_equations | `range_x=10` `range_y=10` `coeff_mult_range=10` |
+| 24 | [Distance between 2 points](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/distance_two_points.py) | Find the distance between (20, 3) and (8, 5) | sqrt(148) | distance_two_points | `maxValXY=20` `minValXY=-20` |
+| 26 | [Linear Equations](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/linear_equations.py) | -16y = 160, -16x + -2y = 228 | x = -13, y = -10 | linear_equations | `n=2` `varRange=20` `coeffRange=20` |
+| 41 | [Intersection of Two Lines](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/intersection_of_two_lines.py) | Find the point of intersection of the two lines: y = 9/3x + 5 and y = -8/5x - 3 | (-40/23, -5/23) | intersection_of_two_lines | `minM=-10` `maxM=10` `minB=-10` `maxB=10` `minDenominator=1` `maxDenominator=6` |
+| 43 | [Cross Product of 2 Vectors](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/vector_cross.py) | [8, 11, 12] X [-15, 1, -17] = | [-199, -44, 173] | vector_cross | `minVal=-20` `maxVal=20` |
+| 45 | [Simple Interest](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/simple_interest.py) | Simple interest for a principle amount of 3324 dollars, 6% rate of interest and for a time period of 9 years is = | 1794.96 | simple_interest | `maxPrinciple=10000` `maxRate=10` `maxTime=10` |
+| 46 | [Multiplication of two matrices](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/matrix_multiplication.py) | Multiplyand | | matrix_multiplication | `maxVal=100` `max_dim=10` |
+| 50 | [Quadratic Equation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/quadratic_equation.py) | Zeros of the Quadratic Equation 21x^2+108x+86=0 | [-0.98, -4.16] | quadratic_equation | `maxVal=100` |
+| 65 | [Multiplication of 2 complex numbers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/multiply_complex_numbers.py) | (-1-5j) * (-8-1j) = | (3+41j) | multiply_complex_numbers | `minRealImaginaryNum=-20` `maxRealImaginaryNum=20` |
+| 72 | [Dot Product of 2 Vectors](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/vector_dot.py) | [-10, -2, -16] . [-4, 14, 5] = | -68 | vector_dot | `minVal=-20` `maxVal=20` |
+| 74 | [Inverse of a Matrix](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/invert_matrix.py) | Inverse of Matrix Matrix([[3, 44, 61], [90, 92, 19], [34, 23, 25]]) is: | Matrix([[-621/43175, -101/43175, 1592/43175], [1604/129525, 1999/129525, -1811/43175], [1058/129525, -1427/129525, 1228/43175]]) | invert_matrix | `SquareMatrixDimension=3` `MaxMatrixElement=99` `OnlyIntegerElementsInInvertedMatrix=False` |
+| 77 | [Determinant to 2x2 Matrix](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/int_matrix_22_determinant.py) | Det([[82, 57], [39, 54]]) = | 2205 | int_matrix_22_determinant | `maxMatrixVal=100` |
+| 78 | [Compound Interest](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/compound_interest.py) | Compound interest for a principle amount of 7124 dollars, 7% rate of interest and for a time period of 5 year is = | 9991.78 | compound_interest | `maxPrinciple=10000` `maxRate=10` `maxTime=10` |
+| 100 | [complex Quadratic Equation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/complex_quadratic.py) | Find the roots of given Quadratic Equation 9x^2 + 8x + 1 = 0 | simplified solution : ((-0.15, -0.738)), generalized solution : ((-8 + sqrt(28))/2*9, (-8 - sqrt(28))/2*9) | complex_quadratic | `prob_type=0` `max_range=10` |
+| 105 | [Combine Like terms](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/combine_like_terms.py) | 10x^3 + 7x^2 + 9x^3 + 7x^3 + 10x^3 | 7x^2 + 36x^3 | combine_like_terms | `maxCoef=10` `maxExp=20` `maxTerms=10` |
+| 111 | [Expanding Factored Binomial](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/algebra/expanding.py) | (x-6)(+2x-3) | *x^2-12*x+18 | expanding | `range_x1=10` `range_x2=10` `range_a=10` `range_b=10` |
## basic_math
| Id | Skill | Example problem | Example Solution | Function Name | Kwargs |
|------|-------|-----------------|------------------|---------------|--------|
-| 0 | [Addition](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/addition.py) | 16+43= | 59 | addition | `maxSum=99` `maxAddend=50` |
-| 1 | [Subtraction](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/subtraction.py) | 85-8= | 77 | subtraction | `maxMinuend=99` `maxDiff=99` |
-| 2 | [Multiplication](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/multiplication.py) | 1*4= | 4 | multiplication | `maxMulti=12` |
-| 3 | [Division](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/division.py) | 9/9= | 1 | division | `maxA=25` `maxB=25` |
+| 0 | [Addition](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/addition.py) | 33+32= | 65 | addition | `maxSum=99` `maxAddend=50` |
+| 1 | [Subtraction](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/subtraction.py) | 65-49= | 16 | subtraction | `maxMinuend=99` `maxDiff=99` |
+| 2 | [Multiplication](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/multiplication.py) | 4*7= | 28 | multiplication | `maxMulti=12` |
+| 3 | [Division](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/division.py) | 44/4= | 11 | division | `maxA=25` `maxB=25` |
| 6 | [Square Root](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/square_root.py) | sqrt(4)= | 2 | square_root | `minNo=1` `maxNo=12` |
-| 8 | [Square](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/square.py) | 17^2= | 289 | square | `maxSquareNum=20` |
-| 13 | [Complex Division](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/complex_division.py) | 21/59= | 0.36 | complex_division | `maxRes=99` `maxDivid=99` |
-| 16 | [Fraction Division](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/divide_fractions.py) | (5/2)/(3/10) | 25/3 | divide_fractions | `maxVal=10` |
-| 28 | [Fraction Multiplication](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/fraction_multiplication.py) | (5/1)*(10/4) | 25/2 | fraction_multiplication | `maxVal=10` |
-| 31 | [Factorial](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/factorial.py) | 2! = | 2 | factorial | `maxInput=6` |
-| 44 | [Compare Fractions](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/compare_fractions.py) | Which symbol represents the comparison between 8/2 and 9/8? | > | compare_fractions | `maxVal=10` |
-| 47 | [Cube Root](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/cube_root.py) | What is the cube root of 396 up to 2 decimal places? | 7.34 | cube_root | `minNo=1` `maxNo=1000` |
-| 53 | [Exponentiation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/exponentiation.py) | 2^7 = | 128 | exponentiation | `maxBase=20` `maxExpo=10` |
-| 71 | [Absolute difference between two numbers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/absolute_difference.py) | |37--95|= | 132 | absolute_difference | `maxA=100` `maxB=100` |
-| 80 | [Percentage of a number](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/percentage.py) | What is 99% of 76? | 75.24 | percentage | `maxValue=99` `maxpercentage=99` |
-| 90 | [isprime](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/is_prime.py) | Is 61 prime? | Yes | is_prime | `max_num=100` |
-| 97 | [Power of Powers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/power_of_powers.py) | Simplify 49^8^2= | 49^16 | power_of_powers | `maxBase=50` `maxPower=10` |
+| 8 | [Square](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/square.py) | 19^2= | 361 | square | `maxSquareNum=20` |
+| 13 | [Complex Division](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/complex_division.py) | 58/69= | 0.84 | complex_division | `maxRes=99` `maxDivid=99` |
+| 16 | [Fraction Division](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/divide_fractions.py) | (3/1)/(9/7) | 7/3 | divide_fractions | `maxVal=10` |
+| 28 | [Fraction Multiplication](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/fraction_multiplication.py) | (1/4)*(9/7) | 9/28 | fraction_multiplication | `maxVal=10` |
+| 31 | [Factorial](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/factorial.py) | 1! = | 1 | factorial | `maxInput=6` |
+| 44 | [Compare Fractions](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/compare_fractions.py) | Which symbol represents the comparison between 1/4 and 6/1? | < | compare_fractions | `maxVal=10` |
+| 47 | [Cube Root](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/cube_root.py) | What is the cube root of 182 up to 2 decimal places? | 5.67 | cube_root | `minNo=1` `maxNo=1000` |
+| 53 | [Exponentiation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/exponentiation.py) | 9^5 = | 59049 | exponentiation | `maxBase=20` `maxExpo=10` |
+| 71 | [Absolute difference between two numbers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/absolute_difference.py) | |80--54|= | 134 | absolute_difference | `maxA=100` `maxB=100` |
+| 80 | [Percentage of a number](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/percentage.py) | What is 84% of 55? | 46.20 | percentage | `maxValue=99` `maxpercentage=99` |
+| 90 | [isprime](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/is_prime.py) | Is 100 prime? | No | is_prime | `max_num=100` |
+| 97 | [Power of Powers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/basic_math/power_of_powers.py) | Simplify 29^7^2= | 29^14 | power_of_powers | `maxBase=50` `maxPower=10` |
## calculus
| Id | Skill | Example problem | Example Solution | Function Name | Kwargs |
|------|-------|-----------------|------------------|---------------|--------|
-| 7 | [Power Rule Differentiation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/power_rule_differentiation.py) | 2x^1 + 9x^7 + 6x^4 | 2x^0 + 63x^6 + 24x^3 | power_rule_differentiation | `maxCoef=10` `maxExp=10` `maxTerms=5` |
-| 48 | [Power Rule Integration](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/power_rule_integration.py) | 5x^2 + 3x^10 + 4x^1 | (5/2)x^3 + (3/10)x^11 + (4/1)x^2 + c | power_rule_integration | `maxCoef=10` `maxExp=10` `maxTerms=5` |
-| 88 | [Differentiation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/differentiation.py) | differentiate w.r.t x : d(ln(x)+2*x^(-3))/dx | 1/x - 6/x^4 | differentiation | `diff_lvl=2` |
-| 89 | [Definite Integral of Quadratic Equation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/definite_integral.py) | The definite integral within limits 0 to 1 of the equation 100x^2 + 80x + 22 is = | 95.3333 | definite_integral | `max_coeff=100` |
-| 110 | [Stationary Points](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/stationary_points.py) | f(x)=3*x^3 + 6*x^2 + 9*x + 1 | | stationary_points | `maxExp=3` `maxCoef=10` |
+| 7 | [Power Rule Differentiation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/power_rule_differentiation.py) | 5x^4 + 6x^1 + 10x^1 | 20x^3 + 6x^0 + 10x^0 | power_rule_differentiation | `maxCoef=10` `maxExp=10` `maxTerms=5` |
+| 48 | [Power Rule Integration](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/power_rule_integration.py) | 10x^1 + 10x^5 + 6x^5 | (10/1)x^2 + (10/5)x^6 + (6/5)x^6 + c | power_rule_integration | `maxCoef=10` `maxExp=10` `maxTerms=5` |
+| 88 | [Differentiation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/differentiation.py) | differentiate w.r.t x : d(ln(x)+8*x^(-3))/dx | 1/x - 24/x^4 | differentiation | `diff_lvl=2` |
+| 89 | [Definite Integral of Quadratic Equation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/definite_integral.py) | The definite integral within limits 0 to 1 of the equation 50x^2 + 39x + 97 is = | 133.1667 | definite_integral | `max_coeff=100` |
+| 110 | [Stationary Points](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/calculus/stationary_points.py) | f(x)=3*x^3 + x^2 + 2*x + 5 | | stationary_points | `maxExp=3` `maxCoef=10` |
## computer_science
| Id | Skill | Example problem | Example Solution | Function Name | Kwargs |
|------|-------|-----------------|------------------|---------------|--------|
-| 4 | [Binary Complement 1s](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/binary_complement_1s.py) | 1= | 0 | binary_complement_1s | `maxDigits=10` |
-| 5 | [Modulo Division](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/modulo_division.py) | 51%46= | 5 | modulo_division | `maxRes=99` `maxModulo=99` |
-| 14 | [Decimal to Binary](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/decimal_to_binary.py) | Binary of 58= | 111010 | decimal_to_binary | `max_dec=99` |
-| 15 | [Binary to Decimal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/binary_to_decimal.py) | 0110001111 | 399 | binary_to_decimal | `max_dig=10` |
-| 56 | [Fibonacci Series](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/fibonacci_series.py) | The Fibonacci Series of the first 8 numbers is ? | [0, 1, 1, 2, 3, 5, 8, 13] | fibonacci_series | `minNo=1` |
-| 62 | [nth Fibonacci number](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/nth_fibonacci_number.py) | What is the 78th Fibonacci number? | 8944394323791488 | nth_fibonacci_number | `maxN=100` |
-| 64 | [Binary to Hexidecimal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/binary_to_hex.py) | 111011 | 0x3b | binary_to_hex | `max_dig=10` |
-| 73 | [Binary 2's Complement](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/binary_2s_complement.py) | 2's complement of 11010 = | 110 | binary_2s_complement | `maxDigits=10` |
-| 79 | [Decimal to Hexadecimal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/decimal_to_hexadeci.py) | Binary of 456= | 0x1c8 | decimal_to_hexadeci | `max_dec=1000` |
-| 84 | [Converts decimal to octal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/decimal_to_octal.py) | The decimal number 3211 in Octal is: | 0o6213 | decimal_to_octal | `maxDecimal=4096` |
-| 91 | [Binary Coded Decimal to Integer](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/bcd_to_decimal.py) | Integer of Binary Coded Decimal 7 is = | 29237 | bcd_to_decimal | `maxNumber=10000` |
-| 103 | [Decimal to Binary Coded Decimal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/decimal_to_bcd.py) | BCD of Decimal Number 5763 is = | 1683 | decimal_to_bcd | `maxNumber=10000` |
+| 4 | [Binary Complement 1s](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/binary_complement_1s.py) | 1111101101= | 0000010010 | binary_complement_1s | `maxDigits=10` |
+| 5 | [Modulo Division](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/modulo_division.py) | 26%25= | 1 | modulo_division | `maxRes=99` `maxModulo=99` |
+| 14 | [Decimal to Binary](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/decimal_to_binary.py) | Binary of 20= | 10100 | decimal_to_binary | `max_dec=99` |
+| 15 | [Binary to Decimal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/binary_to_decimal.py) | 1 | 1 | binary_to_decimal | `max_dig=10` |
+| 56 | [Fibonacci Series](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/fibonacci_series.py) | The Fibonacci Series of the first 1 numbers is ? | [0] | fibonacci_series | `minNo=1` |
+| 62 | [nth Fibonacci number](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/nth_fibonacci_number.py) | What is the 98th Fibonacci number? | 135301852344707186688 | nth_fibonacci_number | `maxN=100` |
+| 64 | [Binary to Hexidecimal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/binary_to_hex.py) | 0000011 | 0x3 | binary_to_hex | `max_dig=10` |
+| 73 | [Binary 2's Complement](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/binary_2s_complement.py) | 2's complement of = | | binary_2s_complement | `maxDigits=10` |
+| 79 | [Decimal to Hexadecimal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/decimal_to_hexadeci.py) | Binary of 867= | 0x363 | decimal_to_hexadeci | `max_dec=1000` |
+| 84 | [Converts decimal to octal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/decimal_to_octal.py) | The decimal number 1941 in Octal is: | 0o3625 | decimal_to_octal | `maxDecimal=4096` |
+| 91 | [Binary Coded Decimal to Integer](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/bcd_to_decimal.py) | Integer of Binary Coded Decimal 9 is = | 38456 | bcd_to_decimal | `maxNumber=10000` |
+| 103 | [Decimal to Binary Coded Decimal](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/computer_science/decimal_to_bcd.py) | BCD of Decimal Number 8960 is = | 2300 | decimal_to_bcd | `maxNumber=10000` |
## geometry
| Id | Skill | Example problem | Example Solution | Function Name | Kwargs |
|------|-------|-----------------|------------------|---------------|--------|
-| 18 | [Area of Triangle](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/area_of_triangle.py) | Area of triangle with side lengths: 15 18 11 = | 82.3164625090267 | area_of_triangle | `maxA=20` `maxB=20` `maxC=20` |
-| 19 | [Triangle exists check](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/valid_triangle.py) | Does triangle with sides 16, 30 and 26 exist? | Yes | valid_triangle | `maxSideLength=50` |
-| 22 | [Third Angle of Triangle](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/third_angle_of_triangle.py) | Third angle of triangle with angles 75 and 64 = | 41 | third_angle_of_triangle | `maxAngle=89` |
-| 25 | [Pythagorean Theorem](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/pythagorean_theorem.py) | The hypotenuse of a right triangle given the other two lengths 7 and 6 = | 9.22 | pythagorean_theorem | `maxLength=20` |
+| 18 | [Area of Triangle](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/area_of_triangle.py) | Area of triangle with side lengths: 14 12 4 = | 22.24859546128699 | area_of_triangle | `maxA=20` `maxB=20` `maxC=20` |
+| 19 | [Triangle exists check](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/valid_triangle.py) | Does triangle with sides 23, 45 and 40 exist? | Yes | valid_triangle | `maxSideLength=50` |
+| 22 | [Third Angle of Triangle](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/third_angle_of_triangle.py) | Third angle of triangle with angles 70 and 54 = | 56 | third_angle_of_triangle | `maxAngle=89` |
+| 25 | [Pythagorean Theorem](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/pythagorean_theorem.py) | The hypotenuse of a right triangle given the other two lengths 5 and 19 = | 19.65 | pythagorean_theorem | `maxLength=20` |
| 29 | [Angle of a Regular Polygon](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/angle_regular_polygon.py) | Find the angle of a regular polygon with 19 sides | 161.05 | angle_regular_polygon | `minVal=3` `maxVal=20` |
-| 32 | [Surface Area of Cube](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_cube.py) | Surface area of cube with side = 7m is | 294 m^2 | surface_area_cube | `maxSide=20` `unit='m'` |
-| 33 | [Surface Area of Cuboid](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_cuboid.py) | Surface area of cuboid with sides = 9m, 6m, 3m is | 198 m^2 | surface_area_cuboid | `maxSide=20` `unit='m'` |
-| 34 | [Surface Area of Cylinder](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_cylinder.py) | Surface area of cylinder with height = 35m and radius = 1m is | 226 m^2 | surface_area_cylinder | `maxRadius=20` `maxHeight=50` `unit='m'` |
-| 35 | [Volum of Cube](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_cube.py) | Volume of cube with side = 19m is | 6859 m^3 | volume_cube | `maxSide=20` `unit='m'` |
-| 36 | [Volume of Cuboid](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_cuboid.py) | Volume of cuboid with sides = 14m, 18m, 8m is | 2016 m^3 | volume_cuboid | `maxSide=20` `unit='m'` |
-| 37 | [Volume of cylinder](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_cylinder.py) | Volume of cylinder with height = 2m and radius = 4m is | 100 m^3 | volume_cylinder | `maxRadius=20` `maxHeight=50` `unit='m'` |
-| 38 | [Surface Area of cone](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_cone.py) | Surface area of cone with height = 10m and radius = 1m is | 34 m^2 | surface_area_cone | `maxRadius=20` `maxHeight=50` `unit='m'` |
-| 39 | [Volume of cone](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_cone.py) | Volume of cone with height = 41m and radius = 2m is | 171 m^3 | volume_cone | `maxRadius=20` `maxHeight=50` `unit='m'` |
-| 49 | [Fourth Angle of Quadrilateral](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/fourth_angle_of_quadrilateral.py) | Fourth angle of quadrilateral with angles 47 , 186, 23 = | 104 | fourth_angle_of_quadrilateral | `maxAngle=180` |
-| 57 | [Trigonometric Values](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/basic_trigonometry.py) | What is tan(90)? | ∞ | basic_trigonometry | `angles=[0, 30, 45, 60, 90]` `functions=['sin', 'cos', 'tan']` |
-| 58 | [Sum of Angles of Polygon](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/sum_of_polygon_angles.py) | Sum of angles of polygon with 8 sides = | 1080 | sum_of_polygon_angles | `maxSides=12` |
+| 32 | [Surface Area of Cube](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_cube.py) | Surface area of cube with side = 3m is | 54 m^2 | surface_area_cube | `maxSide=20` `unit='m'` |
+| 33 | [Surface Area of Cuboid](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_cuboid.py) | Surface area of cuboid with sides = 10m, 3m, 18m is | 528 m^2 | surface_area_cuboid | `maxSide=20` `unit='m'` |
+| 34 | [Surface Area of Cylinder](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_cylinder.py) | Surface area of cylinder with height = 16m and radius = 7m is | 1011 m^2 | surface_area_cylinder | `maxRadius=20` `maxHeight=50` `unit='m'` |
+| 35 | [Volum of Cube](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_cube.py) | Volume of cube with side = 11m is | 1331 m^3 | volume_cube | `maxSide=20` `unit='m'` |
+| 36 | [Volume of Cuboid](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_cuboid.py) | Volume of cuboid with sides = 20m, 17m, 18m is | 6120 m^3 | volume_cuboid | `maxSide=20` `unit='m'` |
+| 37 | [Volume of cylinder](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_cylinder.py) | Volume of cylinder with height = 14m and radius = 19m is | 15877 m^3 | volume_cylinder | `maxRadius=20` `maxHeight=50` `unit='m'` |
+| 38 | [Surface Area of cone](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_cone.py) | Surface area of cone with height = 49m and radius = 10m is | 1885 m^2 | surface_area_cone | `maxRadius=20` `maxHeight=50` `unit='m'` |
+| 39 | [Volume of cone](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_cone.py) | Volume of cone with height = 32m and radius = 17m is | 9684 m^3 | volume_cone | `maxRadius=20` `maxHeight=50` `unit='m'` |
+| 49 | [Fourth Angle of Quadrilateral](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/fourth_angle_of_quadrilateral.py) | Fourth angle of quadrilateral with angles 108 , 131, 30 = | 91 | fourth_angle_of_quadrilateral | `maxAngle=180` |
+| 57 | [Trigonometric Values](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/basic_trigonometry.py) | What is tan(0)? | 0 | basic_trigonometry | `angles=[0, 30, 45, 60, 90]` `functions=['sin', 'cos', 'tan']` |
+| 58 | [Sum of Angles of Polygon](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/sum_of_polygon_angles.py) | Sum of angles of polygon with 3 sides = | 180 | sum_of_polygon_angles | `maxSides=12` |
| 60 | [Surface Area of Sphere](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/surface_area_sphere.py) | Surface area of Sphere with radius = 2m is | 50.26548245743669 m^2 | surface_area_sphere | `maxSide=20` `unit='m'` |
-| 61 | [Volume of Sphere](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_sphere.py) | Volume of sphere with radius 70 m = | 1436755.040241732 m^3 | volume_sphere | `maxRadius=100` |
-| 70 | [Angle between 2 vectors](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/angle_btw_vectors.py) | angle between the vectors [809.39, 750.64, 808.48] and [99.52, 21.47, 323.85] is: | 0.69 radians | angle_btw_vectors | `maxEltAmt=20` |
-| 75 | [Area of a Sector](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/sector_area.py) | Given radius, 38 and angle, 119. Find the area of the sector. | Area of sector = 1499.55199 | sector_area | `maxRadius=49` `maxAngle=359` |
-| 86 | [Degrees to Radians](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/degree_to_rad.py) | Angle 187 in radians is = | 3.26 | degree_to_rad | `max_deg=360` |
+| 61 | [Volume of Sphere](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/volume_sphere.py) | Volume of sphere with radius 13 m = | 9202.7720799157 m^3 | volume_sphere | `maxRadius=100` |
+| 70 | [Angle between 2 vectors](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/angle_btw_vectors.py) | angle between the vectors [104.59, 296.77, 598.39, 80.0, 385.49, 89.79, 590.2, 1.03, 216.98, 262.6, 802.62, 978.03, 157.13, 762.68, 45.06, 267.85, 13.03, 425.11, 594.3] and [443.1, 96.25, 851.74, 839.47, 450.02, 808.83, 674.73, 331.39, 673.46, 653.79, 777.36, 196.12, 742.14, 623.79, 475.72, 730.93, 633.66, 667.95, 751.75] is: | 0.76 radians | angle_btw_vectors | `maxEltAmt=20` |
+| 75 | [Area of a Sector](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/sector_area.py) | Given radius, 18 and angle, 2. Find the area of the sector. | Area of sector = 5.65487 | sector_area | `maxRadius=49` `maxAngle=359` |
+| 86 | [Degrees to Radians](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/degree_to_rad.py) | Angle 253 in radians is = | 4.42 | degree_to_rad | `max_deg=360` |
| 87 | [Radians to Degrees](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/radian_to_deg.py) | Angle 2 in degrees is = | 114.59 | radian_to_deg | `max_rad=3` |
-| 95 | [Curved surface area of a cylinder](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/curved_surface_area_cylinder.py) | What is the curved surface area of a cylinder of radius, 25 and height, 26? | CSA of cylinder = 4084.07 | curved_surface_area_cylinder | `maxRadius=49` `maxHeight=99` |
-| 96 | [Perimeter of Polygons](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/perimeter_of_polygons.py) | The perimeter of a 11 sided polygon with lengths of [39, 70, 58, 27, 85, 119, 47, 59, 113, 38, 45]cm is: | 700 | perimeter_of_polygons | `maxSides=12` `maxLength=120` |
-| 104 | [Circumference](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/circumference.py) | Circumference of circle with radius 76 | 477.5220833456485 | circumference | `maxRadius=100` |
-| 108 | [Arc length of Angle](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/arc_length.py) | Given radius, 30 and angle, 240. Find the arc length of the angle. | Arc length of the angle = 125.66371 | arc_length | `maxRadius=49` `maxAngle=359` |
-| 112 | [Area of Circle](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/area_of_circle.py) | Area of circle with radius 37 | 4302.571428571428 | area_of_circle | `maxRadius=100` |
+| 95 | [Curved surface area of a cylinder](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/curved_surface_area_cylinder.py) | What is the curved surface area of a cylinder of radius, 42 and height, 10? | CSA of cylinder = 2638.94 | curved_surface_area_cylinder | `maxRadius=49` `maxHeight=99` |
+| 96 | [Perimeter of Polygons](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/perimeter_of_polygons.py) | The perimeter of a 8 sided polygon with lengths of [57, 48, 54, 31, 104, 7, 97, 7]cm is: | 405 | perimeter_of_polygons | `maxSides=12` `maxLength=120` |
+| 104 | [Circumference](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/circumference.py) | Circumference of circle with radius 28 | 175.92918860102841 | circumference | `maxRadius=100` |
+| 108 | [Arc length of Angle](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/arc_length.py) | Given radius, 33 and angle, 301. Find the arc length of the angle. | Arc length of the angle = 173.36355 | arc_length | `maxRadius=49` `maxAngle=359` |
+| 112 | [Area of Circle](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/geometry/area_of_circle.py) | Area of circle with radius 81 | 20620.285714285714 | area_of_circle | `maxRadius=100` |
## misc
| Id | Skill | Example problem | Example Solution | Function Name | Kwargs |
|------|-------|-----------------|------------------|---------------|--------|
-| 9 | [LCM (Least Common Multiple)](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/lcm.py) | LCM of 19 and 2 = | 38 | lcm | `maxVal=20` |
-| 10 | [GCD (Greatest Common Denominator)](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/gcd.py) | GCD of 16 and 6 = | 2 | gcd | `maxVal=20` |
-| 27 | [Prime Factorisation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/prime_factors.py) | Find prime factors of 78 | [2, 3, 13] | prime_factors | `minVal=1` `maxVal=200` |
-| 40 | [Common Factors](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/common_factors.py) | Common Factors of 21 and 77 = | [1, 7] | common_factors | `maxVal=100` |
-| 51 | [HCF (Highest Common Factor)](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/hcf.py) | HCF of 17 and 3 = | 1 | hcf | `maxVal=20` |
-| 55 | [Comparing surds](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/surds_comparison.py) | Fill in the blanks 58^(1/5) _ 18^(1/8) | > | surds_comparison | `maxValue=100` `maxRoot=10` |
-| 63 | [Profit or Loss Percent](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/profit_loss_percent.py) | Loss percent when CP = 821 and SP = 113 is: | 86.23629719853837 | profit_loss_percent | `maxCP=1000` `maxSP=1000` |
-| 66 | [Geometric Progression](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/geometric_progression.py) | For the given GP [5, 15, 45, 135, 405, 1215] ,Find the value of a,common ratio,10th term value, sum upto 11th term | The value of a is 5, common ratio is 3 , 10th term is 98415 , sum upto 11th term is 442865.0 | geometric_progression | `number_values=6` `min_value=2` `max_value=12` `n_term=7` `sum_term=5` |
-| 67 | [Geometric Mean of N Numbers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/geometric_mean.py) | Geometric mean of 4 numbers 76 , 17 , 48 , 57 = | (76*17*48*57)^(1/4) = 43.36053695794891 | geometric_mean | `maxValue=100` `maxNum=4` |
-| 68 | [Harmonic Mean of N Numbers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/harmonic_mean.py) | Harmonic mean of 4 numbers 12 , 23 , 94 , 96 = | 4/((1/12) + (1/23) + (1/94) + (1/96)) = 27.0514173998045 | harmonic_mean | `maxValue=100` `maxNum=4` |
-| 69 | [Euclidian norm or L2 norm of a vector](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/euclidian_norm.py) | Euclidian norm or L2 norm of the vector[802.4475305377166, 660.7012519538307, 370.72333556197833, 54.54747734093479, 367.379416204208, 945.4792894951261, 219.91075384694793, 302.48678829534293] is: | 1545.8386466508773 | euclidian_norm | `maxEltAmt=20` |
-| 81 | [Celsius To Fahrenheit](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/celsius_to_fahrenheit.py) | Convert 6 degrees Celsius to degrees Fahrenheit = | 42.8 | celsius_to_fahrenheit | `maxTemp=100` |
-| 82 | [AP Term Calculation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/arithmetic_progression_term.py) | Find the term number 67 of the AP series: -19, -81, -143 ... | -4111 | arithmetic_progression_term | `maxd=100` `maxa=100` `maxn=100` |
-| 83 | [AP Sum Calculation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/arithmetic_progression_sum.py) | Find the sum of first 45 terms of the AP series: 58, 32, 6 ... | -23130.0 | arithmetic_progression_sum | `maxd=100` `maxa=100` `maxn=100` |
-| 85 | [Converts decimal to Roman Numerals](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/decimal_to_roman_numerals.py) | The number 0 in Roman Numerals is: | MMMDCCCXXXV | decimal_to_roman_numerals | `maxDecimal=4000` |
-| 92 | [Complex To Polar Form](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/complex_to_polar.py) | 17.12(2.0theta + i-17.0theta) | -1.45 | complex_to_polar | `minRealImaginaryNum=-20, maxRealImaginaryNum=20` |
-| 93 | [Union,Intersection,Difference of Two Sets](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/set_operation.py) | Given the two sets a={8, 9, 5} ,b={10, 3, 6, 7}.Find the Union,intersection,a-b,b-a and symmetric difference | Union is {3, 5, 6, 7, 8, 9, 10},Intersection is set(), a-b is {8, 9, 5},b-a is {10, 3, 6, 7}, Symmetric difference is {3, 5, 6, 7, 8, 9, 10} | set_operation | `minval=3` `maxval=7` `n_a=4` `n_b=5` |
-| 94 | [Base Conversion](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/base_conversion.py) | Convert E87 from base 16 to base 10. | 3719 | base_conversion | `maxNum=60000` `maxBase=16` |
-| 98 | [Quotient of Powers with Same Base](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/quotient_of_power_same_base.py) | The Quotient of 31^8 and 31^8 = 31^(8-8) = 31^0 | 1 | quotient_of_power_same_base | `maxBase=50` `maxPower=10` |
-| 99 | [Quotient of Powers with Same Power](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/quotient_of_power_same_power.py) | The Quotient of 24^1 and 19^1 = (24/19)^1 = 1.263157894736842^1 | 1.263157894736842 | quotient_of_power_same_power | `maxBase=50` `maxPower=10` |
-| 101 | [Leap Year or Not](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/is_leap_year.py) | Year 2086 | is not a leap year | is_leap_year | `minNumber=1900` `maxNumber=2099` |
-| 102 | [Minute to Hour conversion](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/minutes_to_hours.py) | Convert 680 minutes to Hours & Minutes | 11 hours and 20 minutes | minutes_to_hours | `maxMinutes=999` |
-| 106 | [signum function](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/signum_function.py) | signum of -93 is = | -1 | signum_function | `min=-999` `max=999` |
-| 109 | [Binomial distribution](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/binomial_distribution.py) | A manufacturer of metal pistons finds that, on average, 40.52% of the pistons they manufacture are rejected because they are incorrectly sized. What is the probability that a batch of 20 pistons will contain no more than 2 rejected pistons? | 0.32 | binomial_distribution | `` |
+| 9 | [LCM (Least Common Multiple)](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/lcm.py) | LCM of 16 and 19 = | 304 | lcm | `maxVal=20` |
+| 10 | [GCD (Greatest Common Denominator)](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/gcd.py) | GCD of 1 and 12 = | 1 | gcd | `maxVal=20` |
+| 27 | [Prime Factorisation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/prime_factors.py) | Find prime factors of 169 | [13, 13] | prime_factors | `minVal=1` `maxVal=200` |
+| 40 | [Common Factors](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/common_factors.py) | Common Factors of 48 and 67 = | [1] | common_factors | `maxVal=100` |
+| 51 | [HCF (Highest Common Factor)](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/hcf.py) | HCF of 10 and 6 = | 2 | hcf | `maxVal=20` |
+| 55 | [Comparing surds](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/surds_comparison.py) | Fill in the blanks 51^(1/7) _ 7^(1/4) | > | surds_comparison | `maxValue=100` `maxRoot=10` |
+| 63 | [Profit or Loss Percent](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/profit_loss_percent.py) | Profit percent when CP = 16 and SP = 196 is: | 1125.0 | profit_loss_percent | `maxCP=1000` `maxSP=1000` |
+| 66 | [Geometric Progression](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/geometric_progression.py) | For the given GP [3, 12, 48, 192, 768, 3072] ,Find the value of a,common ratio,10th term value, sum upto 8th term | The value of a is 3, common ratio is 4 , 10th term is 786432 , sum upto 8th term is 65535.0 | geometric_progression | `number_values=6` `min_value=2` `max_value=12` `n_term=7` `sum_term=5` |
+| 67 | [Geometric Mean of N Numbers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/geometric_mean.py) | Geometric mean of 4 numbers 51 , 77 , 62 , 72 = | (51*77*62*72)^(1/4) = 64.70625602593176 | geometric_mean | `maxValue=100` `maxNum=4` |
+| 68 | [Harmonic Mean of N Numbers](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/harmonic_mean.py) | Harmonic mean of 4 numbers 86 , 70 , 91 , 11 = | 4/((1/86) + (1/70) + (1/91) + (1/11)) = 31.296033736866974 | harmonic_mean | `maxValue=100` `maxNum=4` |
+| 69 | [Euclidian norm or L2 norm of a vector](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/euclidian_norm.py) | Euclidian norm or L2 norm of the vector[350.37640204706764, 267.36207256487256, 909.0435795264115, 802.6858926435999, 918.1006749495702, 868.4754635821735, 751.2551651468856, 155.99149031988512, 842.4880119121881, 466.59314571766276, 174.37320803605527, 201.99028302994392, 857.0557600458039, 472.3155684465278, 693.4305596009841, 678.7843734115539, 591.0195002345957, 560.290210411179, 828.7547053283382, 462.8660305249392] is: | 2883.230420380704 | euclidian_norm | `maxEltAmt=20` |
+| 81 | [Celsius To Fahrenheit](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/celsius_to_fahrenheit.py) | Convert -12 degrees Celsius to degrees Fahrenheit = | 10.399999999999999 | celsius_to_fahrenheit | `maxTemp=100` |
+| 82 | [AP Term Calculation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/arithmetic_progression_term.py) | Find the term number 42 of the AP series: 65, 134, 203 ... | 2894 | arithmetic_progression_term | `maxd=100` `maxa=100` `maxn=100` |
+| 83 | [AP Sum Calculation](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/arithmetic_progression_sum.py) | Find the sum of first 59 terms of the AP series: 51, 132, 213 ... | 141600.0 | arithmetic_progression_sum | `maxd=100` `maxa=100` `maxn=100` |
+| 85 | [Converts decimal to Roman Numerals](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/decimal_to_roman_numerals.py) | The number 0 in Roman Numerals is: | CCCII | decimal_to_roman_numerals | `maxDecimal=4000` |
+| 92 | [Complex To Polar Form](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/complex_to_polar.py) | 9.22(9.0theta + i2.0theta) | 0.22 | complex_to_polar | `minRealImaginaryNum=-20, maxRealImaginaryNum=20` |
+| 93 | [Union,Intersection,Difference of Two Sets](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/set_operation.py) | Given the two sets a={9, 10, 5, 7} ,b={8, 4, 7}.Find the Union,intersection,a-b,b-a and symmetric difference | Union is {4, 5, 7, 8, 9, 10},Intersection is {7}, a-b is {9, 10, 5},b-a is {8, 4}, Symmetric difference is {4, 5, 8, 9, 10} | set_operation | `minval=3` `maxval=7` `n_a=4` `n_b=5` |
+| 94 | [Base Conversion](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/base_conversion.py) | Convert 7CE1 from base 16 to base 9. | 47761 | base_conversion | `maxNum=60000` `maxBase=16` |
+| 98 | [Quotient of Powers with Same Base](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/quotient_of_power_same_base.py) | The Quotient of 42^4 and 42^6 = 42^(4-6) = 42^-2 | 0.0005668934240362812 | quotient_of_power_same_base | `maxBase=50` `maxPower=10` |
+| 99 | [Quotient of Powers with Same Power](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/quotient_of_power_same_power.py) | The Quotient of 39^1 and 4^1 = (39/4)^1 = 9.75^1 | 9.75 | quotient_of_power_same_power | `maxBase=50` `maxPower=10` |
+| 101 | [Leap Year or Not](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/is_leap_year.py) | Year 1918 | is not a leap year | is_leap_year | `minNumber=1900` `maxNumber=2099` |
+| 102 | [Minute to Hour conversion](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/minutes_to_hours.py) | Convert 805 minutes to Hours & Minutes | 13 hours and 25 minutes | minutes_to_hours | `maxMinutes=999` |
+| 106 | [signum function](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/signum_function.py) | signum of 884 is = | 1 | signum_function | `min=-999` `max=999` |
+| 109 | [Binomial distribution](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/misc/binomial_distribution.py) | A manufacturer of metal pistons finds that, on average, 37.33% of the pistons they manufacture are rejected because they are incorrectly sized. What is the probability that a batch of 19 pistons will contain no more than 6 rejected pistons? | 39.71 | binomial_distribution | `` |
## statistics
| Id | Skill | Example problem | Example Solution | Function Name | Kwargs |
|------|-------|-----------------|------------------|---------------|--------|
-| 30 | [Combinations of Objects](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/combinations.py) | Number of combinations from 17 objects picked 0 at a time | 1 | combinations | `maxlength=20` |
-| 42 | [Permutations](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/permutation.py) | Number of Permutations from 16 objects picked 8 at a time = | 518918400 | permutation | `maxlength=20` |
-| 52 | [Probability of a certain sum appearing on faces of dice](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/dice_sum_probability.py) | If 3 dice are rolled at the same time, the probability of getting a sum of 5 = | 6/216 | dice_sum_probability | `maxDice=3` |
-| 54 | [Confidence interval For sample S](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/confidence_interval.py) | The confidence interval for sample [272, 287, 274, 273, 266, 212, 242, 258, 291, 243, 248, 240, 236, 232, 249, 207, 271, 251, 206, 282, 295, 283, 238, 210, 234, 288, 268, 229, 289, 219, 294, 264, 215] with 95% confidence is | (262.9335851189468, 244.09671791135625) | confidence_interval | `` |
-| 59 | [Mean,Standard Deviation,Variance](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/data_summary.py) | Find the mean,standard deviation and variance for the data[50, 29, 15, 50, 26, 25, 12, 16, 31, 38, 31, 5, 7, 42, 36] | The Mean is 27.533333333333335 , Standard Deviation is 193.0488888888889, Variance is 13.894203427648845 | data_summary | `number_values=15` `minval=5` `maxval=50` |
-| 76 | [Mean and Median](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/mean_median.py) | Given the series of numbers [6, 9, 17, 22, 26, 35, 37, 58, 75, 83]. find the arithmatic mean and mdian of the series | Arithmetic mean of the series is 36.8 and Arithmetic median of this series is 30.5 | mean_median | `maxlen=10` |
-| 107 | [Conditional Probability](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/conditional_probability.py) | Someone tested positive for a nasty disease which only 0.18% of population have. Test sensitivity (true positive) is equal to SN= 93.38% whereas test specificity (true negative) SP= 93.15%. What is the probability that this guy really has that disease? | 2.4% | conditional_probability | `` |
+| 30 | [Combinations of Objects](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/combinations.py) | Number of combinations from 20 objects picked 8 at a time | 125970 | combinations | `maxlength=20` |
+| 42 | [Permutations](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/permutation.py) | Number of Permutations from 11 objects picked 7 at a time = | 1663200 | permutation | `maxlength=20` |
+| 52 | [Probability of a certain sum appearing on faces of dice](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/dice_sum_probability.py) | If 3 dice are rolled at the same time, the probability of getting a sum of 10 = | 27/216 | dice_sum_probability | `maxDice=3` |
+| 54 | [Confidence interval For sample S](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/confidence_interval.py) | The confidence interval for sample [208, 223, 298, 225, 200, 247, 258, 226, 253, 284, 216, 203, 237, 263, 218, 286, 248, 233, 288, 207] with 80% confidence is | (249.58829083537802, 232.511709164622) | confidence_interval | `` |
+| 59 | [Mean,Standard Deviation,Variance](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/data_summary.py) | Find the mean,standard deviation and variance for the data[20, 47, 20, 8, 42, 20, 27, 9, 30, 29, 13, 20, 24, 41, 43] | The Mean is 26.2 , Standard Deviation is 144.42666666666668, Variance is 12.017764628526667 | data_summary | `number_values=15` `minval=5` `maxval=50` |
+| 76 | [Mean and Median](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/mean_median.py) | Given the series of numbers [4, 15, 17, 25, 38, 42, 58, 71, 75, 77]. find the arithmatic mean and mdian of the series | Arithmetic mean of the series is 42.2 and Arithmetic median of this series is 40.0 | mean_median | `maxlen=10` |
+| 107 | [Conditional Probability](https://github.com/lukew3/mathgenerator/blob/main/mathgenerator/funcs/statistics/conditional_probability.py) | Someone tested positive for a nasty disease which only 1.63% of population have. Test sensitivity (true positive) is equal to SN= 98.57% whereas test specificity (true negative) SP= 90.98%. What is the probability that this guy really has that disease? | 15.33% | conditional_probability | `` |
diff --git a/mathgenerator/funcs/algebra/basic_algebra.py b/mathgenerator/funcs/algebra/basic_algebra.py
index c935b9a..f2a7202 100644
--- a/mathgenerator/funcs/algebra/basic_algebra.py
+++ b/mathgenerator/funcs/algebra/basic_algebra.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def basicAlgebraFunc(maxVariable=10, format='string'):
+def gen_func(maxVariable=10, format='string'):
a = random.randint(1, maxVariable)
b = random.randint(1, maxVariable)
c = random.randint(b, maxVariable)
@@ -32,5 +32,5 @@ def basicAlgebraFunc(maxVariable=10, format='string'):
return a, b, c, x
-basic_algebra = Generator("Basic Algebra", 11, basicAlgebraFunc,
+basic_algebra = Generator("Basic Algebra", 11, gen_func,
["maxVariable=10"])
diff --git a/mathgenerator/funcs/algebra/combine_like_terms.py b/mathgenerator/funcs/algebra/combine_like_terms.py
index f31604f..f5ca837 100644
--- a/mathgenerator/funcs/algebra/combine_like_terms.py
+++ b/mathgenerator/funcs/algebra/combine_like_terms.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def likeTermCombineFunc(maxCoef=10, maxExp=20, maxTerms=10, format='string'):
+def gen_func(maxCoef=10, maxExp=20, maxTerms=10, format='string'):
numTerms = random.randint(1, maxTerms)
problem = ""
solution = ""
@@ -46,5 +46,5 @@ def combineTerms(string):
return final_string
-combine_like_terms = Generator("Combine Like terms", 105, likeTermCombineFunc,
+combine_like_terms = Generator("Combine Like terms", 105, gen_func,
["maxCoef=10", "maxExp=20", "maxTerms=10"])
diff --git a/mathgenerator/funcs/algebra/complex_quadratic.py b/mathgenerator/funcs/algebra/complex_quadratic.py
index 803cd46..f09af5c 100644
--- a/mathgenerator/funcs/algebra/complex_quadratic.py
+++ b/mathgenerator/funcs/algebra/complex_quadratic.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def complexQuadraticFunc(prob_type=0, max_range=10, format='string'):
+def gen_func(prob_type=0, max_range=10, format='string'):
if prob_type < 0 or prob_type > 1:
print("prob_type not supported")
print("prob_type = 0 for real roots problems ")
@@ -69,5 +69,5 @@ def complexQuadraticFunc(prob_type=0, max_range=10, format='string'):
complex_quadratic = Generator("complex Quadratic Equation", 100,
- complexQuadraticFunc,
+ gen_func,
["prob_type=0", "max_range=10"])
diff --git a/mathgenerator/funcs/algebra/compound_interest.py b/mathgenerator/funcs/algebra/compound_interest.py
index c787c81..785aff1 100644
--- a/mathgenerator/funcs/algebra/compound_interest.py
+++ b/mathgenerator/funcs/algebra/compound_interest.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def compoundInterestFunc(maxPrinciple=10000,
+def gen_func(maxPrinciple=10000,
maxRate=10,
maxTime=10,
format='string'):
@@ -22,5 +22,5 @@ def compoundInterestFunc(maxPrinciple=10000,
compound_interest = Generator(
- "Compound Interest", 78, compoundInterestFunc,
+ "Compound Interest", 78, gen_func,
["maxPrinciple=10000", "maxRate=10", "maxTime=10"])
diff --git a/mathgenerator/funcs/algebra/distance_two_points.py b/mathgenerator/funcs/algebra/distance_two_points.py
index a0f5cb6..be1e902 100644
--- a/mathgenerator/funcs/algebra/distance_two_points.py
+++ b/mathgenerator/funcs/algebra/distance_two_points.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def distanceTwoPointsFunc(maxValXY=20, minValXY=-20, format='string'):
+def gen_func(maxValXY=20, minValXY=-20, format='string'):
point1X = random.randint(minValXY, maxValXY + 1)
point1Y = random.randint(minValXY, maxValXY + 1)
point2X = random.randint(minValXY, maxValXY + 1)
@@ -20,5 +20,5 @@ def distanceTwoPointsFunc(maxValXY=20, minValXY=-20, format='string'):
distance_two_points = Generator("Distance between 2 points", 24,
- distanceTwoPointsFunc,
+ gen_func,
["maxValXY=20", "minValXY=-20"])
diff --git a/mathgenerator/funcs/algebra/expanding.py b/mathgenerator/funcs/algebra/expanding.py
index e4bd8ca..62d4945 100644
--- a/mathgenerator/funcs/algebra/expanding.py
+++ b/mathgenerator/funcs/algebra/expanding.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def expandingFunc(range_x1=10,
+def gen_func(range_x1=10,
range_x2=10,
range_a=10,
range_b=10,
@@ -55,5 +55,5 @@ def expandingFunc(range_x1=10,
expanding = Generator(
- "Expanding Factored Binomial", 111, expandingFunc,
+ "Expanding Factored Binomial", 111, gen_func,
["range_x1=10", "range_x2=10", "range_a=10", "range_b=10"])
diff --git a/mathgenerator/funcs/algebra/factoring.py b/mathgenerator/funcs/algebra/factoring.py
index 1191aff..1baaed8 100644
--- a/mathgenerator/funcs/algebra/factoring.py
+++ b/mathgenerator/funcs/algebra/factoring.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def factoringFunc(range_x1=10, range_x2=10, format='string'):
+def gen_func(range_x1=10, range_x2=10, format='string'):
x1 = random.randint(-range_x1, range_x1)
x2 = random.randint(-range_x2, range_x2)
@@ -34,5 +34,5 @@ def factoringFunc(range_x1=10, range_x2=10, format='string'):
return b, c, x1, x2
-factoring = Generator("Factoring Quadratic", 21, factoringFunc,
+factoring = Generator("Factoring Quadratic", 21, gen_func,
["range_x1=10", "range_x2=10"])
diff --git a/mathgenerator/funcs/algebra/int_matrix_22_determinant.py b/mathgenerator/funcs/algebra/int_matrix_22_determinant.py
index 46186fb..00e9795 100644
--- a/mathgenerator/funcs/algebra/int_matrix_22_determinant.py
+++ b/mathgenerator/funcs/algebra/int_matrix_22_determinant.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def determinantToMatrix22(maxMatrixVal=100, format='string'):
+def gen_func(maxMatrixVal=100, format='string'):
a = random.randint(0, maxMatrixVal)
b = random.randint(0, maxMatrixVal)
c = random.randint(0, maxMatrixVal)
@@ -20,5 +20,5 @@ def determinantToMatrix22(maxMatrixVal=100, format='string'):
int_matrix_22_determinant = Generator("Determinant to 2x2 Matrix", 77,
- determinantToMatrix22,
+ gen_func,
["maxMatrixVal=100"])
diff --git a/mathgenerator/funcs/algebra/intersection_of_two_lines.py b/mathgenerator/funcs/algebra/intersection_of_two_lines.py
index 622b7be..34fa289 100644
--- a/mathgenerator/funcs/algebra/intersection_of_two_lines.py
+++ b/mathgenerator/funcs/algebra/intersection_of_two_lines.py
@@ -3,13 +3,13 @@ from .__init__ import *
import fractions
-def intersectionOfTwoLinesFunc(minM=-10,
- maxM=10,
- minB=-10,
- maxB=10,
- minDenominator=1,
- maxDenominator=6,
- format='string'):
+def gen_func(minM=-10,
+ maxM=10,
+ minB=-10,
+ maxB=10,
+ minDenominator=1,
+ maxDenominator=6,
+ format='string'):
def generateEquationString(m, b):
"""
Generates an equation given the slope and intercept.
@@ -75,7 +75,7 @@ def intersectionOfTwoLinesFunc(minM=-10,
intersection_of_two_lines = Generator(
- "Intersection of Two Lines", 41, intersectionOfTwoLinesFunc, [
+ "Intersection of Two Lines", 41, gen_func, [
"minM=-10", "maxM=10", "minB=-10", "maxB=10", "minDenominator=1",
"maxDenominator=6"
])
diff --git a/mathgenerator/funcs/algebra/invert_matrix.py b/mathgenerator/funcs/algebra/invert_matrix.py
index a3775f3..bca6983 100644
--- a/mathgenerator/funcs/algebra/invert_matrix.py
+++ b/mathgenerator/funcs/algebra/invert_matrix.py
@@ -2,7 +2,7 @@ from .__init__ import *
import sympy
-def matrixInversion(SquareMatrixDimension=3,
+def gen_func(SquareMatrixDimension=3,
MaxMatrixElement=99,
OnlyIntegerElementsInInvertedMatrix=False,
format='string'):
@@ -85,7 +85,7 @@ def matrixInversion(SquareMatrixDimension=3,
return Mat, sympy.Matrix.inv(Mat)
-invert_matrix = Generator("Inverse of a Matrix", 74, matrixInversion, [
+invert_matrix = Generator("Inverse of a Matrix", 74, gen_func, [
"SquareMatrixDimension=3", "MaxMatrixElement=99",
"OnlyIntegerElementsInInvertedMatrix=False"
])
diff --git a/mathgenerator/funcs/algebra/linear_equations.py b/mathgenerator/funcs/algebra/linear_equations.py
index f061b21..7955c7a 100644
--- a/mathgenerator/funcs/algebra/linear_equations.py
+++ b/mathgenerator/funcs/algebra/linear_equations.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def linearEquationsFunc(n=2, varRange=20, coeffRange=20, format='string'):
+def gen_func(n=2, varRange=20, coeffRange=20, format='string'):
if n > 10:
print("[!] n cannot be greater than 10")
return None, None
@@ -36,5 +36,5 @@ def linearEquationsFunc(n=2, varRange=20, coeffRange=20, format='string'):
return problem, solution
-linear_equations = Generator("Linear Equations", 26, linearEquationsFunc,
+linear_equations = Generator("Linear Equations", 26, gen_func,
["n=2", "varRange=20", "coeffRange=20"])
diff --git a/mathgenerator/funcs/algebra/log.py b/mathgenerator/funcs/algebra/log.py
index 24f5fec..26d00aa 100644
--- a/mathgenerator/funcs/algebra/log.py
+++ b/mathgenerator/funcs/algebra/log.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def logFunc(maxBase=3, maxVal=8, format='string'):
+def gen_func(maxBase=3, maxVal=8, format='string'):
a = random.randint(1, maxVal)
b = random.randint(2, maxBase)
c = pow(b, a)
@@ -18,4 +18,4 @@ def logFunc(maxBase=3, maxVal=8, format='string'):
return b, c, a
-log = Generator("Logarithm", 12, logFunc, ["maxBase=3", "maxVal=8"])
+log = Generator("Logarithm", 12, gen_func, ["maxBase=3", "maxVal=8"])
diff --git a/mathgenerator/funcs/algebra/matrix_multiplication.py b/mathgenerator/funcs/algebra/matrix_multiplication.py
index c78db9d..0344519 100644
--- a/mathgenerator/funcs/algebra/matrix_multiplication.py
+++ b/mathgenerator/funcs/algebra/matrix_multiplication.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def matrixMultiplicationFunc(maxVal=100, max_dim=10, format='string'):
+def gen_func(maxVal=100, max_dim=10, format='string'):
m = random.randint(2, max_dim)
n = random.randint(2, max_dim)
k = random.randint(2, max_dim)
@@ -59,5 +59,5 @@ def matrixMultiplicationFuncHelper(inp):
matrix_multiplication = Generator("Multiplication of two matrices", 46,
- matrixMultiplicationFunc,
+ gen_func,
["maxVal=100", "max_dim=10"])
diff --git a/mathgenerator/funcs/algebra/midpoint_of_two_points.py b/mathgenerator/funcs/algebra/midpoint_of_two_points.py
index 6743af5..2f8dbca 100644
--- a/mathgenerator/funcs/algebra/midpoint_of_two_points.py
+++ b/mathgenerator/funcs/algebra/midpoint_of_two_points.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def MidPointOfTwoPointFunc(maxValue=20, format='string'):
+def gen_func(maxValue=20, format='string'):
x1 = random.randint(-20, maxValue)
y1 = random.randint(-20, maxValue)
x2 = random.randint(-20, maxValue)
@@ -20,4 +20,4 @@ def MidPointOfTwoPointFunc(maxValue=20, format='string'):
midPoint_of_two_points = Generator("Midpoint of the two point", 20,
- MidPointOfTwoPointFunc, ["maxValue=20"])
+ gen_func, ["maxValue=20"])
diff --git a/mathgenerator/funcs/algebra/multiply_complex_numbers.py b/mathgenerator/funcs/algebra/multiply_complex_numbers.py
index f5fc994..1c9e712 100644
--- a/mathgenerator/funcs/algebra/multiply_complex_numbers.py
+++ b/mathgenerator/funcs/algebra/multiply_complex_numbers.py
@@ -1,9 +1,9 @@
from .__init__ import *
-def multiplyComplexNumbersFunc(minRealImaginaryNum=-20,
- maxRealImaginaryNum=20,
- format='string'):
+def gen_func(minRealImaginaryNum=-20,
+ maxRealImaginaryNum=20,
+ format='string'):
num1 = complex(random.randint(minRealImaginaryNum, maxRealImaginaryNum),
random.randint(minRealImaginaryNum, maxRealImaginaryNum))
num2 = complex(random.randint(minRealImaginaryNum, maxRealImaginaryNum),
@@ -21,5 +21,5 @@ def multiplyComplexNumbersFunc(minRealImaginaryNum=-20,
multiply_complex_numbers = Generator(
- "Multiplication of 2 complex numbers", 65, multiplyComplexNumbersFunc,
+ "Multiplication of 2 complex numbers", 65, gen_func,
["minRealImaginaryNum=-20", "maxRealImaginaryNum=20"])
diff --git a/mathgenerator/funcs/algebra/multiply_int_to_22_matrix.py b/mathgenerator/funcs/algebra/multiply_int_to_22_matrix.py
index 69e5c33..d7fa997 100644
--- a/mathgenerator/funcs/algebra/multiply_int_to_22_matrix.py
+++ b/mathgenerator/funcs/algebra/multiply_int_to_22_matrix.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def multiplyIntToMatrix22(maxMatrixVal=10, maxRes=100, format='string'):
+def gen_func(maxMatrixVal=10, maxRes=100, format='string'):
a = random.randint(0, maxMatrixVal)
b = random.randint(0, maxMatrixVal)
c = random.randint(0, maxMatrixVal)
@@ -30,5 +30,5 @@ def multiplyIntToMatrix22(maxMatrixVal=10, maxRes=100, format='string'):
multiply_int_to_22_matrix = Generator("Integer Multiplication with 2x2 Matrix",
- 17, multiplyIntToMatrix22,
+ 17, gen_func,
["maxMatrixVal=10", "maxRes=100"])
diff --git a/mathgenerator/funcs/algebra/quadratic_equation.py b/mathgenerator/funcs/algebra/quadratic_equation.py
index 77d5d6e..f98ceed 100644
--- a/mathgenerator/funcs/algebra/quadratic_equation.py
+++ b/mathgenerator/funcs/algebra/quadratic_equation.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def quadraticEquation(maxVal=100, format='string'):
+def gen_func(maxVal=100, format='string'):
a = random.randint(1, maxVal)
c = random.randint(1, maxVal)
b = random.randint(
@@ -22,5 +22,5 @@ def quadraticEquation(maxVal=100, format='string'):
return a, b, c, res
-quadratic_equation = Generator("Quadratic Equation", 50, quadraticEquation,
+quadratic_equation = Generator("Quadratic Equation", 50, gen_func,
["maxVal=100"])
diff --git a/mathgenerator/funcs/algebra/simple_interest.py b/mathgenerator/funcs/algebra/simple_interest.py
index fe54296..d80e42b 100644
--- a/mathgenerator/funcs/algebra/simple_interest.py
+++ b/mathgenerator/funcs/algebra/simple_interest.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def simpleInterestFunc(maxPrinciple=10000,
+def gen_func(maxPrinciple=10000,
maxRate=10,
maxTime=10,
format='string'):
@@ -23,5 +23,5 @@ def simpleInterestFunc(maxPrinciple=10000,
return a, b, c, d
-simple_interest = Generator("Simple Interest", 45, simpleInterestFunc,
+simple_interest = Generator("Simple Interest", 45, gen_func,
["maxPrinciple=10000", "maxRate=10", "maxTime=10"])
diff --git a/mathgenerator/funcs/algebra/system_of_equations.py b/mathgenerator/funcs/algebra/system_of_equations.py
index c93a79e..92ebef9 100644
--- a/mathgenerator/funcs/algebra/system_of_equations.py
+++ b/mathgenerator/funcs/algebra/system_of_equations.py
@@ -1,10 +1,10 @@
from .__init__ import *
-def systemOfEquationsFunc(range_x=10,
- range_y=10,
- coeff_mult_range=10,
- format='string'):
+def gen_func(range_x=10,
+ range_y=10,
+ coeff_mult_range=10,
+ format='string'):
# Generate solution point first
x = random.randint(-range_x, range_x)
y = random.randint(-range_y, range_y)
@@ -56,5 +56,5 @@ def systemOfEquationsFunc(range_x=10,
system_of_equations = Generator(
- "Solve a System of Equations in R^2", 23, systemOfEquationsFunc,
+ "Solve a System of Equations in R^2", 23, gen_func,
["range_x=10", "range_y=10", "coeff_mult_range=10"])
diff --git a/mathgenerator/funcs/algebra/vector_cross.py b/mathgenerator/funcs/algebra/vector_cross.py
index 496ca82..241e30c 100644
--- a/mathgenerator/funcs/algebra/vector_cross.py
+++ b/mathgenerator/funcs/algebra/vector_cross.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def vectorCrossFunc(minVal=-20, maxVal=20, format='string'):
+def gen_func(minVal=-20, maxVal=20, format='string'):
a = [random.randint(minVal, maxVal) for i in range(3)]
b = [random.randint(minVal, maxVal) for i in range(3)]
c = [
@@ -19,5 +19,5 @@ def vectorCrossFunc(minVal=-20, maxVal=20, format='string'):
return a, b, c
-vector_cross = Generator("Cross Product of 2 Vectors", 43, vectorCrossFunc,
+vector_cross = Generator("Cross Product of 2 Vectors", 43, gen_func,
["minVal=-20", "maxVal=20"])
diff --git a/mathgenerator/funcs/algebra/vector_dot.py b/mathgenerator/funcs/algebra/vector_dot.py
index 1013ecd..227d69f 100644
--- a/mathgenerator/funcs/algebra/vector_dot.py
+++ b/mathgenerator/funcs/algebra/vector_dot.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def vectorDotFunc(minVal=-20, maxVal=20, format='string'):
+def gen_func(minVal=-20, maxVal=20, format='string'):
a = [random.randint(minVal, maxVal) for i in range(3)]
b = [random.randint(minVal, maxVal) for i in range(3)]
c = a[0] * b[0] + a[1] * b[1] + a[2] * b[2]
@@ -16,5 +16,5 @@ def vectorDotFunc(minVal=-20, maxVal=20, format='string'):
return a, b, c
-vector_dot = Generator("Dot Product of 2 Vectors", 72, vectorDotFunc,
+vector_dot = Generator("Dot Product of 2 Vectors", 72, gen_func,
["minVal=-20", "maxVal=20"])
diff --git a/mathgenerator/funcs/basic_math/absolute_difference.py b/mathgenerator/funcs/basic_math/absolute_difference.py
index 091348f..a786c9f 100644
--- a/mathgenerator/funcs/basic_math/absolute_difference.py
+++ b/mathgenerator/funcs/basic_math/absolute_difference.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def main(maxA=100, maxB=100, format='string'):
+def gen_func(maxA=100, maxB=100, format='string'):
a = random.randint(-1 * maxA, maxA)
b = random.randint(-1 * maxB, maxB)
absDiff = abs(a - b)
@@ -15,4 +15,4 @@ def main(maxA=100, maxB=100, format='string'):
absolute_difference = Generator("Absolute difference between two numbers", 71,
- main, ["maxA=100", "maxB=100"])
+ gen_func, ["maxA=100", "maxB=100"])
diff --git a/mathgenerator/funcs/basic_math/addition.py b/mathgenerator/funcs/basic_math/addition.py
index 658dc3b..af1ec85 100644
--- a/mathgenerator/funcs/basic_math/addition.py
+++ b/mathgenerator/funcs/basic_math/addition.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def main(maxSum=99, maxAddend=50, format='string'):
+def gen_func(maxSum=99, maxAddend=50, format='string'):
if maxAddend > maxSum:
maxAddend = maxSum
a = random.randint(0, maxAddend)
@@ -21,4 +21,4 @@ def main(maxSum=99, maxAddend=50, format='string'):
return a, b, c
-addition = Generator("Addition", 0, main, ["maxSum=99", "maxAddend=50"])
+addition = Generator("Addition", 0, gen_func, ["maxSum=99", "maxAddend=50"])
diff --git a/mathgenerator/funcs/basic_math/compare_fractions.py b/mathgenerator/funcs/basic_math/compare_fractions.py
index a2da776..7f45f58 100644
--- a/mathgenerator/funcs/basic_math/compare_fractions.py
+++ b/mathgenerator/funcs/basic_math/compare_fractions.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def compareFractionsFunc(maxVal=10, format='string'):
+def gen_func(maxVal=10, format='string'):
a = random.randint(1, maxVal)
b = random.randint(1, maxVal)
c = random.randint(1, maxVal)
@@ -34,5 +34,5 @@ def compareFractionsFunc(maxVal=10, format='string'):
return a, b, c, d, solution
-compare_fractions = Generator("Compare Fractions", 44, compareFractionsFunc,
+compare_fractions = Generator("Compare Fractions", 44, gen_func,
["maxVal=10"])
diff --git a/mathgenerator/funcs/basic_math/complex_division.py b/mathgenerator/funcs/basic_math/complex_division.py
index b962661..4f178b4 100644
--- a/mathgenerator/funcs/basic_math/complex_division.py
+++ b/mathgenerator/funcs/basic_math/complex_division.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def complexDivisionFunc(maxRes=99, maxDivid=99, format='string'):
+def gen_func(maxRes=99, maxDivid=99, format='string'):
a = random.randint(0, maxDivid)
b = random.randint(1, min(maxRes, maxDivid))
c = a / b
@@ -16,5 +16,5 @@ def complexDivisionFunc(maxRes=99, maxDivid=99, format='string'):
return a, b, c
-complex_division = Generator("Complex Division", 13, complexDivisionFunc,
+complex_division = Generator("Complex Division", 13, gen_func,
["maxRes=99", "maxDivid=99"])
diff --git a/mathgenerator/funcs/basic_math/cube_root.py b/mathgenerator/funcs/basic_math/cube_root.py
index 34837e7..fb94295 100644
--- a/mathgenerator/funcs/basic_math/cube_root.py
+++ b/mathgenerator/funcs/basic_math/cube_root.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def cubeRootFunc(minNo=1, maxNo=1000, format='string'):
+def gen_func(minNo=1, maxNo=1000, format='string'):
b = random.randint(minNo, maxNo)
a = b**(1 / 3)
@@ -13,4 +13,4 @@ def cubeRootFunc(minNo=1, maxNo=1000, format='string'):
return b, a
-cube_root = Generator("Cube Root", 47, cubeRootFunc, ["minNo=1", "maxNo=1000"])
+cube_root = Generator("Cube Root", 47, gen_func, ["minNo=1", "maxNo=1000"])
diff --git a/mathgenerator/funcs/basic_math/divide_fractions.py b/mathgenerator/funcs/basic_math/divide_fractions.py
index d7af59a..fc08d91 100644
--- a/mathgenerator/funcs/basic_math/divide_fractions.py
+++ b/mathgenerator/funcs/basic_math/divide_fractions.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def divideFractionsFunc(maxVal=10, format='string'):
+def gen_func(maxVal=10, format='string'):
a = random.randint(1, maxVal)
b = random.randint(1, maxVal)
@@ -44,5 +44,5 @@ def divideFractionsFunc(maxVal=10, format='string'):
return a, b, c, d, x
-divide_fractions = Generator("Fraction Division", 16, divideFractionsFunc,
+divide_fractions = Generator("Fraction Division", 16, gen_func,
["maxVal=10"])
diff --git a/mathgenerator/funcs/basic_math/division.py b/mathgenerator/funcs/basic_math/division.py
index a381615..e316fc9 100644
--- a/mathgenerator/funcs/basic_math/division.py
+++ b/mathgenerator/funcs/basic_math/division.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def divisionToIntFunc(maxA=25, maxB=25, format='string'):
+def gen_func(maxA=25, maxB=25, format='string'):
a = random.randint(1, maxA)
b = random.randint(1, maxB)
@@ -18,4 +18,4 @@ def divisionToIntFunc(maxA=25, maxB=25, format='string'):
return divisor, dividend, quotient
-division = Generator("Division", 3, divisionToIntFunc, ["maxA=25", "maxB=25"])
+division = Generator("Division", 3, gen_func, ["maxA=25", "maxB=25"])
diff --git a/mathgenerator/funcs/basic_math/exponentiation.py b/mathgenerator/funcs/basic_math/exponentiation.py
index f6fe824..5c2a0d8 100644
--- a/mathgenerator/funcs/basic_math/exponentiation.py
+++ b/mathgenerator/funcs/basic_math/exponentiation.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def exponentiationFunc(maxBase=20, maxExpo=10, format='string'):
+def gen_func(maxBase=20, maxExpo=10, format='string'):
base = random.randint(1, maxBase)
expo = random.randint(1, maxExpo)
@@ -13,5 +13,5 @@ def exponentiationFunc(maxBase=20, maxExpo=10, format='string'):
return base, expo, base**expo
-exponentiation = Generator("Exponentiation", 53, exponentiationFunc,
+exponentiation = Generator("Exponentiation", 53, gen_func,
["maxBase=20", "maxExpo=10"])
diff --git a/mathgenerator/funcs/basic_math/factorial.py b/mathgenerator/funcs/basic_math/factorial.py
index 500d8fc..76a032b 100644
--- a/mathgenerator/funcs/basic_math/factorial.py
+++ b/mathgenerator/funcs/basic_math/factorial.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def factorialFunc(maxInput=6, format='string'):
+def gen_func(maxInput=6, format='string'):
a = random.randint(0, maxInput)
n = a
b = 1
@@ -17,4 +17,4 @@ def factorialFunc(maxInput=6, format='string'):
return a, b
-factorial = Generator("Factorial", 31, factorialFunc, ["maxInput=6"])
+factorial = Generator("Factorial", 31, gen_func, ["maxInput=6"])
diff --git a/mathgenerator/funcs/basic_math/fraction_multiplication.py b/mathgenerator/funcs/basic_math/fraction_multiplication.py
index d609bc9..230e47d 100644
--- a/mathgenerator/funcs/basic_math/fraction_multiplication.py
+++ b/mathgenerator/funcs/basic_math/fraction_multiplication.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def multiplyFractionsFunc(maxVal=10, format='string'):
+def gen_func(maxVal=10, format='string'):
a = random.randint(1, maxVal)
b = random.randint(1, maxVal)
c = random.randint(1, maxVal)
@@ -41,4 +41,4 @@ def multiplyFractionsFunc(maxVal=10, format='string'):
fraction_multiplication = Generator("Fraction Multiplication", 28,
- multiplyFractionsFunc, ["maxVal=10"])
+ gen_func, ["maxVal=10"])
diff --git a/mathgenerator/funcs/basic_math/is_prime.py b/mathgenerator/funcs/basic_math/is_prime.py
index eb0746e..c47f476 100644
--- a/mathgenerator/funcs/basic_math/is_prime.py
+++ b/mathgenerator/funcs/basic_math/is_prime.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def isprime(max_num=100, format='string'):
+def gen_func(max_num=100, format='string'):
a = random.randint(2, max_num)
problem = f"Is {a} prime?"
if a == 2:
@@ -24,4 +24,4 @@ def isprime(max_num=100, format='string'):
return a, solution
-is_prime = Generator('isprime', 90, isprime, ["max_num=100"])
+is_prime = Generator('isprime', 90, gen_func, ["max_num=100"])
diff --git a/mathgenerator/funcs/basic_math/multiplication.py b/mathgenerator/funcs/basic_math/multiplication.py
index 2412ad6..2473f5d 100644
--- a/mathgenerator/funcs/basic_math/multiplication.py
+++ b/mathgenerator/funcs/basic_math/multiplication.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def multiplicationFunc(maxMulti=12, format='string'):
+def gen_func(maxMulti=12, format='string'):
a = random.randint(0, maxMulti)
b = random.randint(0, maxMulti)
c = a * b
@@ -17,5 +17,5 @@ def multiplicationFunc(maxMulti=12, format='string'):
return a, b, c
-multiplication = Generator("Multiplication", 2, multiplicationFunc,
+multiplication = Generator("Multiplication", 2, gen_func,
["maxMulti=12"])
diff --git a/mathgenerator/funcs/basic_math/percentage.py b/mathgenerator/funcs/basic_math/percentage.py
index fae3f19..626fc98 100644
--- a/mathgenerator/funcs/basic_math/percentage.py
+++ b/mathgenerator/funcs/basic_math/percentage.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def percentageFunc(maxValue=99, maxpercentage=99, format='string'):
+def gen_func(maxValue=99, maxpercentage=99, format='string'):
a = random.randint(1, maxpercentage)
b = random.randint(1, maxValue)
problem = f"What is {a}% of {b}?"
@@ -17,5 +17,5 @@ def percentageFunc(maxValue=99, maxpercentage=99, format='string'):
return a, b, formatted_float
-percentage = Generator("Percentage of a number", 80, percentageFunc,
+percentage = Generator("Percentage of a number", 80, gen_func,
["maxValue=99", "maxpercentage=99"])
diff --git a/mathgenerator/funcs/basic_math/power_of_powers.py b/mathgenerator/funcs/basic_math/power_of_powers.py
index 9f937b7..71131d3 100644
--- a/mathgenerator/funcs/basic_math/power_of_powers.py
+++ b/mathgenerator/funcs/basic_math/power_of_powers.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def powerOfPowersFunc(maxBase=50, maxPower=10, format='string'):
+def gen_func(maxBase=50, maxPower=10, format='string'):
base = random.randint(1, maxBase)
power1 = random.randint(1, maxPower)
power2 = random.randint(1, maxPower)
@@ -20,5 +20,5 @@ def powerOfPowersFunc(maxBase=50, maxPower=10, format='string'):
return base, power1, power2, base, step
-power_of_powers = Generator("Power of Powers", 97, powerOfPowersFunc,
+power_of_powers = Generator("Power of Powers", 97, gen_func,
["maxBase=50", "maxPower=10"])
diff --git a/mathgenerator/funcs/basic_math/square.py b/mathgenerator/funcs/basic_math/square.py
index e42382f..2af255d 100644
--- a/mathgenerator/funcs/basic_math/square.py
+++ b/mathgenerator/funcs/basic_math/square.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def squareFunc(maxSquareNum=20, format='string'):
+def gen_func(maxSquareNum=20, format='string'):
a = random.randint(1, maxSquareNum)
b = a * a
@@ -17,4 +17,4 @@ def squareFunc(maxSquareNum=20, format='string'):
return a, b
-square = Generator("Square", 8, squareFunc, ["maxSquareNum=20"])
+square = Generator("Square", 8, gen_func, ["maxSquareNum=20"])
diff --git a/mathgenerator/funcs/basic_math/square_root.py b/mathgenerator/funcs/basic_math/square_root.py
index 42c295d..6061695 100644
--- a/mathgenerator/funcs/basic_math/square_root.py
+++ b/mathgenerator/funcs/basic_math/square_root.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def squareRootFunc(minNo=1, maxNo=12, format='string'):
+def gen_func(minNo=1, maxNo=12, format='string'):
b = random.randint(minNo, maxNo)
a = b * b
@@ -17,5 +17,5 @@ def squareRootFunc(minNo=1, maxNo=12, format='string'):
return a, b
-square_root = Generator("Square Root", 6, squareRootFunc,
+square_root = Generator("Square Root", 6, gen_func,
["minNo=1", "maxNo=12"])
diff --git a/mathgenerator/funcs/basic_math/subtraction.py b/mathgenerator/funcs/basic_math/subtraction.py
index 6a1c8f5..91dcc1a 100644
--- a/mathgenerator/funcs/basic_math/subtraction.py
+++ b/mathgenerator/funcs/basic_math/subtraction.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def subtractionFunc(maxMinuend=99, maxDiff=99, format='string'):
+def gen_func(maxMinuend=99, maxDiff=99, format='string'):
a = random.randint(0, maxMinuend)
b = random.randint(max(0, (a - maxDiff)), a)
c = a - b
@@ -16,5 +16,5 @@ def subtractionFunc(maxMinuend=99, maxDiff=99, format='string'):
return a, b, c
-subtraction = Generator("Subtraction", 1, subtractionFunc,
+subtraction = Generator("Subtraction", 1, gen_func,
["maxMinuend=99", "maxDiff=99"])
diff --git a/mathgenerator/funcs/calculus/definite_integral.py b/mathgenerator/funcs/calculus/definite_integral.py
index 3b3c32e..8e8c85a 100644
--- a/mathgenerator/funcs/calculus/definite_integral.py
+++ b/mathgenerator/funcs/calculus/definite_integral.py
@@ -3,7 +3,7 @@ import scipy
from scipy.integrate import quad
-def definiteIntegralFunc(max_coeff=100, format='string'):
+def gen_func(max_coeff=100, format='string'):
def integrand(x, a, b, c):
return a * x**2 + b * x + c
@@ -26,4 +26,4 @@ def definiteIntegralFunc(max_coeff=100, format='string'):
definite_integral = Generator("Definite Integral of Quadratic Equation", 89,
- definiteIntegralFunc, ["max_coeff=100"])
+ gen_func, ["max_coeff=100"])
diff --git a/mathgenerator/funcs/calculus/differentiation.py b/mathgenerator/funcs/calculus/differentiation.py
index b814266..9ec010d 100644
--- a/mathgenerator/funcs/calculus/differentiation.py
+++ b/mathgenerator/funcs/calculus/differentiation.py
@@ -34,7 +34,7 @@ def genDifferentiationProblem(diff_lvl=2):
return problem
-def differentiationFunc(diff_lvl=2, format='string'):
+def gen_func(diff_lvl=2, format='string'):
if diff_lvl < 1 or diff_lvl > 4:
print("diff_lvl not supported")
return None
@@ -53,5 +53,5 @@ def differentiationFunc(diff_lvl=2, format='string'):
return problem, solution
-differentiation = Generator("Differentiation", 88, differentiationFunc,
+differentiation = Generator("Differentiation", 88, gen_func,
["diff_lvl=2"])
diff --git a/mathgenerator/funcs/calculus/power_rule_differentiation.py b/mathgenerator/funcs/calculus/power_rule_differentiation.py
index df9decc..3d960a8 100644
--- a/mathgenerator/funcs/calculus/power_rule_differentiation.py
+++ b/mathgenerator/funcs/calculus/power_rule_differentiation.py
@@ -1,10 +1,10 @@
from .__init__ import *
-def powerRuleDifferentiationFunc(maxCoef=10,
- maxExp=10,
- maxTerms=5,
- format='string'):
+def gen_func(maxCoef=10,
+ maxExp=10,
+ maxTerms=5,
+ format='string'):
numTerms = random.randint(1, maxTerms)
problem = ""
solution = ""
@@ -28,5 +28,5 @@ def powerRuleDifferentiationFunc(maxCoef=10,
power_rule_differentiation = Generator(
- "Power Rule Differentiation", 7, powerRuleDifferentiationFunc,
+ "Power Rule Differentiation", 7, gen_func,
["maxCoef=10", "maxExp=10", "maxTerms=5"])
diff --git a/mathgenerator/funcs/calculus/power_rule_integration.py b/mathgenerator/funcs/calculus/power_rule_integration.py
index 23e07d7..0051970 100644
--- a/mathgenerator/funcs/calculus/power_rule_integration.py
+++ b/mathgenerator/funcs/calculus/power_rule_integration.py
@@ -1,10 +1,10 @@
from .__init__ import *
-def powerRuleIntegrationFunc(maxCoef=10,
- maxExp=10,
- maxTerms=5,
- format='string'):
+def gen_func(maxCoef=10,
+ maxExp=10,
+ maxTerms=5,
+ format='string'):
numTerms = random.randint(1, maxTerms)
problem = ""
solution = ""
@@ -31,5 +31,5 @@ def powerRuleIntegrationFunc(maxCoef=10,
power_rule_integration = Generator("Power Rule Integration", 48,
- powerRuleIntegrationFunc,
+ gen_func,
["maxCoef=10", "maxExp=10", "maxTerms=5"])
diff --git a/mathgenerator/funcs/calculus/stationary_points.py b/mathgenerator/funcs/calculus/stationary_points.py
index ef43951..5ab844a 100644
--- a/mathgenerator/funcs/calculus/stationary_points.py
+++ b/mathgenerator/funcs/calculus/stationary_points.py
@@ -2,7 +2,7 @@ from .__init__ import *
import sympy
-def stationaryPointsFunc(maxExp=3, maxCoef=10, format='string'):
+def gen_func(maxExp=3, maxCoef=10, format='string'):
while True:
x = sympy.symbols('x')
problem = 0
@@ -24,5 +24,5 @@ def stationaryPointsFunc(maxExp=3, maxCoef=10, format='string'):
return problem, solution
-stationary_points = Generator("Stationary Points", 110, stationaryPointsFunc,
+stationary_points = Generator("Stationary Points", 110, gen_func,
["maxExp=3", "maxCoef=10"])
diff --git a/mathgenerator/funcs/computer_science/bcd_to_decimal.py b/mathgenerator/funcs/computer_science/bcd_to_decimal.py
index 84d908c..e10dbc4 100644
--- a/mathgenerator/funcs/computer_science/bcd_to_decimal.py
+++ b/mathgenerator/funcs/computer_science/bcd_to_decimal.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def BCDtoDecimalFunc(maxNumber=10000, format='string'):
+def gen_func(maxNumber=10000, format='string'):
n = random.randint(1000, maxNumber)
binstring = ''
while True:
@@ -26,4 +26,4 @@ def BCDtoDecimalFunc(maxNumber=10000, format='string'):
bcd_to_decimal = Generator("Binary Coded Decimal to Integer", 91,
- BCDtoDecimalFunc, ["maxNumber=10000"])
+ gen_func, ["maxNumber=10000"])
diff --git a/mathgenerator/funcs/computer_science/binary_2s_complement.py b/mathgenerator/funcs/computer_science/binary_2s_complement.py
index 4b8c1d3..2c41e82 100644
--- a/mathgenerator/funcs/computer_science/binary_2s_complement.py
+++ b/mathgenerator/funcs/computer_science/binary_2s_complement.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def binary2sComplementFunc(maxDigits=10, format='string'):
+def gen_func(maxDigits=10, format='string'):
digits = random.randint(1, maxDigits)
question = ''.join([str(random.randint(0, 1))
for i in range(digits)]).lstrip('0')
@@ -34,4 +34,4 @@ def binary2sComplementFunc(maxDigits=10, format='string'):
binary_2s_complement = Generator("Binary 2's Complement", 73,
- binary2sComplementFunc, ["maxDigits=10"])
+ gen_func, ["maxDigits=10"])
diff --git a/mathgenerator/funcs/computer_science/binary_complement_1s.py b/mathgenerator/funcs/computer_science/binary_complement_1s.py
index 7a314b1..84111fc 100644
--- a/mathgenerator/funcs/computer_science/binary_complement_1s.py
+++ b/mathgenerator/funcs/computer_science/binary_complement_1s.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def binaryComplement1sFunc(maxDigits=10, format='string'):
+def gen_func(maxDigits=10, format='string'):
question = ''
answer = ''
@@ -20,4 +20,4 @@ def binaryComplement1sFunc(maxDigits=10, format='string'):
binary_complement_1s = Generator("Binary Complement 1s", 4,
- binaryComplement1sFunc, ["maxDigits=10"])
+ gen_func, ["maxDigits=10"])
diff --git a/mathgenerator/funcs/computer_science/binary_to_decimal.py b/mathgenerator/funcs/computer_science/binary_to_decimal.py
index 9d1367f..0820a9b 100644
--- a/mathgenerator/funcs/computer_science/binary_to_decimal.py
+++ b/mathgenerator/funcs/computer_science/binary_to_decimal.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def binaryToDecimalFunc(max_dig=10, format='string'):
+def gen_func(max_dig=10, format='string'):
problem = ''
for i in range(random.randint(1, max_dig)):
@@ -17,5 +17,5 @@ def binaryToDecimalFunc(max_dig=10, format='string'):
return problem, solution
-binary_to_decimal = Generator("Binary to Decimal", 15, binaryToDecimalFunc,
+binary_to_decimal = Generator("Binary to Decimal", 15, gen_func,
["max_dig=10"])
diff --git a/mathgenerator/funcs/computer_science/binary_to_hex.py b/mathgenerator/funcs/computer_science/binary_to_hex.py
index fb76ecf..6c4c645 100644
--- a/mathgenerator/funcs/computer_science/binary_to_hex.py
+++ b/mathgenerator/funcs/computer_science/binary_to_hex.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def binaryToHexFunc(max_dig=10, format='string'):
+def gen_func(max_dig=10, format='string'):
problem = ''
for i in range(random.randint(1, max_dig)):
temp = str(random.randint(0, 1))
@@ -16,5 +16,5 @@ def binaryToHexFunc(max_dig=10, format='string'):
return problem, solution
-binary_to_hex = Generator("Binary to Hexidecimal", 64, binaryToHexFunc,
+binary_to_hex = Generator("Binary to Hexidecimal", 64, gen_func,
["max_dig=10"])
diff --git a/mathgenerator/funcs/computer_science/decimal_to_bcd.py b/mathgenerator/funcs/computer_science/decimal_to_bcd.py
index 0774ef9..728b26e 100644
--- a/mathgenerator/funcs/computer_science/decimal_to_bcd.py
+++ b/mathgenerator/funcs/computer_science/decimal_to_bcd.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def DecimalToBCDFunc(maxNumber=10000, format='string'):
+def gen_func(maxNumber=10000, format='string'):
n = random.randint(1000, maxNumber)
x = n
# binstring = ''
@@ -22,4 +22,4 @@ def DecimalToBCDFunc(maxNumber=10000, format='string'):
decimal_to_bcd = Generator("Decimal to Binary Coded Decimal", 103,
- DecimalToBCDFunc, ["maxNumber=10000"])
+ gen_func, ["maxNumber=10000"])
diff --git a/mathgenerator/funcs/computer_science/decimal_to_binary.py b/mathgenerator/funcs/computer_science/decimal_to_binary.py
index c9926c9..2129102 100644
--- a/mathgenerator/funcs/computer_science/decimal_to_binary.py
+++ b/mathgenerator/funcs/computer_science/decimal_to_binary.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def DecimalToBinaryFunc(max_dec=99, format='string'):
+def gen_func(max_dec=99, format='string'):
a = random.randint(1, max_dec)
b = bin(a).replace("0b", "")
@@ -15,5 +15,5 @@ def DecimalToBinaryFunc(max_dec=99, format='string'):
return a, str(b)
-decimal_to_binary = Generator("Decimal to Binary", 14, DecimalToBinaryFunc,
+decimal_to_binary = Generator("Decimal to Binary", 14, gen_func,
["max_dec=99"])
diff --git a/mathgenerator/funcs/computer_science/decimal_to_hexadeci.py b/mathgenerator/funcs/computer_science/decimal_to_hexadeci.py
index 6467806..c9d4bf9 100644
--- a/mathgenerator/funcs/computer_science/decimal_to_hexadeci.py
+++ b/mathgenerator/funcs/computer_science/decimal_to_hexadeci.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def deciToHexaFunc(max_dec=1000, format='string'):
+def gen_func(max_dec=1000, format='string'):
a = random.randint(0, max_dec)
b = hex(a)
@@ -15,5 +15,5 @@ def deciToHexaFunc(max_dec=1000, format='string'):
return a, str(b)
-decimal_to_hexadeci = Generator("Decimal to Hexadecimal", 79, deciToHexaFunc,
+decimal_to_hexadeci = Generator("Decimal to Hexadecimal", 79, gen_func,
["max_dec=1000"])
diff --git a/mathgenerator/funcs/computer_science/decimal_to_octal.py b/mathgenerator/funcs/computer_science/decimal_to_octal.py
index 6e61565..a706afe 100644
--- a/mathgenerator/funcs/computer_science/decimal_to_octal.py
+++ b/mathgenerator/funcs/computer_science/decimal_to_octal.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def decimalToOctalFunc(maxDecimal=4096, format='string'):
+def gen_func(maxDecimal=4096, format='string'):
x = random.randint(0, maxDecimal)
problem = "The decimal number " + str(x) + " in Octal is: "
solution = oct(x)
@@ -15,4 +15,4 @@ def decimalToOctalFunc(maxDecimal=4096, format='string'):
decimal_to_octal = Generator("Converts decimal to octal", 84,
- decimalToOctalFunc, ["maxDecimal=4096"])
+ gen_func, ["maxDecimal=4096"])
diff --git a/mathgenerator/funcs/computer_science/fibonacci_series.py b/mathgenerator/funcs/computer_science/fibonacci_series.py
index 8ac40dc..166b21e 100644
--- a/mathgenerator/funcs/computer_science/fibonacci_series.py
+++ b/mathgenerator/funcs/computer_science/fibonacci_series.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def fibonacciSeriesFunc(minNo=1, format='string'):
+def gen_func(minNo=1, format='string'):
n = random.randint(minNo, 20)
def createFibList(n):
@@ -26,5 +26,5 @@ def fibonacciSeriesFunc(minNo=1, format='string'):
return n, fibList
-fibonacci_series = Generator("Fibonacci Series", 56, fibonacciSeriesFunc,
+fibonacci_series = Generator("Fibonacci Series", 56, gen_func,
["minNo=1"])
diff --git a/mathgenerator/funcs/computer_science/modulo_division.py b/mathgenerator/funcs/computer_science/modulo_division.py
index 944b0fc..1d6a04a 100644
--- a/mathgenerator/funcs/computer_science/modulo_division.py
+++ b/mathgenerator/funcs/computer_science/modulo_division.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def moduloFunc(maxRes=99, maxModulo=99, format='string'):
+def gen_func(maxRes=99, maxModulo=99, format='string'):
a = random.randint(0, maxModulo)
b = random.randint(0, min(maxRes, maxModulo))
c = a % b if b != 0 else 0
@@ -16,5 +16,5 @@ def moduloFunc(maxRes=99, maxModulo=99, format='string'):
return a, b, c
-modulo_division = Generator("Modulo Division", 5, moduloFunc,
+modulo_division = Generator("Modulo Division", 5, gen_func,
["maxRes=99", "maxModulo=99"])
diff --git a/mathgenerator/funcs/computer_science/nth_fibonacci_number.py b/mathgenerator/funcs/computer_science/nth_fibonacci_number.py
index f11f3ff..5d06300 100644
--- a/mathgenerator/funcs/computer_science/nth_fibonacci_number.py
+++ b/mathgenerator/funcs/computer_science/nth_fibonacci_number.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def nthFibonacciNumberFunc(maxN=100, format='string'):
+def gen_func(maxN=100, format='string'):
golden_ratio = (1 + math.sqrt(5)) / 2
n = random.randint(1, maxN)
problem = f"What is the {n}th Fibonacci number?"
@@ -18,4 +18,4 @@ def nthFibonacciNumberFunc(maxN=100, format='string'):
nth_fibonacci_number = Generator("nth Fibonacci number", 62,
- nthFibonacciNumberFunc, ["maxN=100"])
+ gen_func, ["maxN=100"])
diff --git a/mathgenerator/funcs/geometry/angle_btw_vectors.py b/mathgenerator/funcs/geometry/angle_btw_vectors.py
index 7175ea7..fce8835 100644
--- a/mathgenerator/funcs/geometry/angle_btw_vectors.py
+++ b/mathgenerator/funcs/geometry/angle_btw_vectors.py
@@ -2,7 +2,7 @@ from .__init__ import *
import math
-def angleBtwVectorsFunc(maxEltAmt=20, format='string'):
+def gen_func(maxEltAmt=20, format='string'):
s = 0
v1 = [
round(random.uniform(0, 1000), 2)
@@ -34,4 +34,4 @@ def angleBtwVectorsFunc(maxEltAmt=20, format='string'):
angle_btw_vectors = Generator("Angle between 2 vectors", 70,
- angleBtwVectorsFunc, ["maxEltAmt=20"])
+ gen_func, ["maxEltAmt=20"])
diff --git a/mathgenerator/funcs/geometry/angle_regular_polygon.py b/mathgenerator/funcs/geometry/angle_regular_polygon.py
index ed8fd21..5c59872 100644
--- a/mathgenerator/funcs/geometry/angle_regular_polygon.py
+++ b/mathgenerator/funcs/geometry/angle_regular_polygon.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def regularPolygonAngleFunc(minVal=3, maxVal=20, format='string'):
+def gen_func(minVal=3, maxVal=20, format='string'):
sideNum = random.randint(minVal, maxVal)
problem = f"Find the angle of a regular polygon with {sideNum} sides"
@@ -17,5 +17,5 @@ def regularPolygonAngleFunc(minVal=3, maxVal=20, format='string'):
angle_regular_polygon = Generator("Angle of a Regular Polygon", 29,
- regularPolygonAngleFunc,
+ gen_func,
["minVal=3", "maxVal=20"])
diff --git a/mathgenerator/funcs/geometry/arc_length.py b/mathgenerator/funcs/geometry/arc_length.py
index e60b7b6..3e9e82d 100644
--- a/mathgenerator/funcs/geometry/arc_length.py
+++ b/mathgenerator/funcs/geometry/arc_length.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def arclengthFunc(maxRadius=49, maxAngle=359, format='string'):
+def gen_func(maxRadius=49, maxAngle=359, format='string'):
radius = random.randint(1, maxRadius)
angle = random.randint(1, maxAngle)
problem = f"Given radius, {radius} and angle, {angle}. Find the arc length of the angle."
@@ -19,5 +19,5 @@ def arclengthFunc(maxRadius=49, maxAngle=359, format='string'):
return radius, angle, formatted_float
-arc_length = Generator("Arc length of Angle", 108, arclengthFunc,
+arc_length = Generator("Arc length of Angle", 108, gen_func,
["maxRadius=49", "maxAngle=359"])
diff --git a/mathgenerator/funcs/geometry/area_of_circle.py b/mathgenerator/funcs/geometry/area_of_circle.py
index b7f830e..88b17d7 100644
--- a/mathgenerator/funcs/geometry/area_of_circle.py
+++ b/mathgenerator/funcs/geometry/area_of_circle.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def areaCircle(maxRadius=100, format='string'):
+def gen_func(maxRadius=100, format='string'):
r = random.randint(0, maxRadius)
pi = 22 / 7
area = pi * r * r
@@ -15,5 +15,5 @@ def areaCircle(maxRadius=100, format='string'):
return r, area
-area_of_circle = Generator("Area of Circle", 112, areaCircle,
+area_of_circle = Generator("Area of Circle", 112, gen_func,
["maxRadius=100"])
diff --git a/mathgenerator/funcs/geometry/area_of_triangle.py b/mathgenerator/funcs/geometry/area_of_triangle.py
index 68abb5a..a60f39a 100644
--- a/mathgenerator/funcs/geometry/area_of_triangle.py
+++ b/mathgenerator/funcs/geometry/area_of_triangle.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def areaOfTriangleFunc(maxA=20, maxB=20, maxC=20, format='string'):
+def gen_func(maxA=20, maxB=20, maxC=20, format='string'):
a = random.randint(1, maxA)
b = random.randint(1, maxB)
c = random.randint(1, maxC)
@@ -20,5 +20,5 @@ def areaOfTriangleFunc(maxA=20, maxB=20, maxC=20, format='string'):
return a, b, c, area
-area_of_triangle = Generator("Area of Triangle", 18, areaOfTriangleFunc,
+area_of_triangle = Generator("Area of Triangle", 18, gen_func,
["maxA=20", "maxB=20", "maxC=20"])
diff --git a/mathgenerator/funcs/geometry/basic_trigonometry.py b/mathgenerator/funcs/geometry/basic_trigonometry.py
index e2bcfb8..1f9ac2a 100644
--- a/mathgenerator/funcs/geometry/basic_trigonometry.py
+++ b/mathgenerator/funcs/geometry/basic_trigonometry.py
@@ -4,7 +4,7 @@ import math
# Handles degrees in quadrant one
-def basicTrigonometryFunc(angles=[0, 30, 45, 60, 90],
+def gen_func(angles=[0, 30, 45, 60, 90],
functions=["sin", "cos", "tan"],
format='string'):
angle = random.choice(angles)
@@ -35,5 +35,5 @@ def basicTrigonometryFunc(angles=[0, 30, 45, 60, 90],
basic_trigonometry = Generator(
- "Trigonometric Values", 57, basicTrigonometryFunc,
+ "Trigonometric Values", 57, gen_func,
["angles=[0, 30, 45, 60, 90]", "functions=['sin', 'cos', 'tan']"])
diff --git a/mathgenerator/funcs/geometry/circumference.py b/mathgenerator/funcs/geometry/circumference.py
index 446a127..daecbc2 100644
--- a/mathgenerator/funcs/geometry/circumference.py
+++ b/mathgenerator/funcs/geometry/circumference.py
@@ -2,7 +2,7 @@ from .__init__ import *
import math
-def circumferenceCircle(maxRadius=100, format='string'):
+def gen_func(maxRadius=100, format='string'):
r = random.randint(0, maxRadius)
circumference = 2 * math.pi * r
@@ -15,5 +15,5 @@ def circumferenceCircle(maxRadius=100, format='string'):
return r, circumference
-circumference = Generator("Circumference", 104, circumferenceCircle,
+circumference = Generator("Circumference", 104, gen_func,
["maxRadius=100"])
diff --git a/mathgenerator/funcs/geometry/curved_surface_area_cylinder.py b/mathgenerator/funcs/geometry/curved_surface_area_cylinder.py
index 7e41dc2..c3bbb84 100644
--- a/mathgenerator/funcs/geometry/curved_surface_area_cylinder.py
+++ b/mathgenerator/funcs/geometry/curved_surface_area_cylinder.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def curvedSurfaceAreaCylinderFunc(maxRadius=49, maxHeight=99, format='string'):
+def gen_func(maxRadius=49, maxHeight=99, format='string'):
r = random.randint(1, maxRadius)
h = random.randint(1, maxHeight)
csa = float(2 * math.pi * r * h)
@@ -18,5 +18,5 @@ def curvedSurfaceAreaCylinderFunc(maxRadius=49, maxHeight=99, format='string'):
curved_surface_area_cylinder = Generator("Curved surface area of a cylinder",
- 95, curvedSurfaceAreaCylinderFunc,
+ 95, gen_func,
["maxRadius=49", "maxHeight=99"])
diff --git a/mathgenerator/funcs/geometry/degree_to_rad.py b/mathgenerator/funcs/geometry/degree_to_rad.py
index d7159bc..bedf807 100644
--- a/mathgenerator/funcs/geometry/degree_to_rad.py
+++ b/mathgenerator/funcs/geometry/degree_to_rad.py
@@ -2,7 +2,7 @@ from .__init__ import *
from numpy import pi
-def degreeToRadFunc(max_deg=360, format='string'):
+def gen_func(max_deg=360, format='string'):
a = random.randint(0, max_deg)
b = (pi * a) / 180
b = round(b, 2)
@@ -17,5 +17,5 @@ def degreeToRadFunc(max_deg=360, format='string'):
return a, b
-degree_to_rad = Generator("Degrees to Radians", 86, degreeToRadFunc,
+degree_to_rad = Generator("Degrees to Radians", 86, gen_func,
["max_deg=360"])
diff --git a/mathgenerator/funcs/geometry/fourth_angle_of_quadrilateral.py b/mathgenerator/funcs/geometry/fourth_angle_of_quadrilateral.py
index 76a7001..96f359d 100644
--- a/mathgenerator/funcs/geometry/fourth_angle_of_quadrilateral.py
+++ b/mathgenerator/funcs/geometry/fourth_angle_of_quadrilateral.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def fourthAngleOfQuadriFunc(maxAngle=180, format='string'):
+def gen_func(maxAngle=180, format='string'):
angle1 = random.randint(1, maxAngle)
angle2 = random.randint(1, 240 - angle1)
angle3 = random.randint(1, 340 - (angle1 + angle2))
@@ -20,5 +20,5 @@ def fourthAngleOfQuadriFunc(maxAngle=180, format='string'):
fourth_angle_of_quadrilateral = Generator("Fourth Angle of Quadrilateral", 49,
- fourthAngleOfQuadriFunc,
+ gen_func,
["maxAngle=180"])
diff --git a/mathgenerator/funcs/geometry/perimeter_of_polygons.py b/mathgenerator/funcs/geometry/perimeter_of_polygons.py
index cae88e5..aea8a5c 100644
--- a/mathgenerator/funcs/geometry/perimeter_of_polygons.py
+++ b/mathgenerator/funcs/geometry/perimeter_of_polygons.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def perimeterOfPolygons(maxSides=12, maxLength=120, format='string'):
+def gen_func(maxSides=12, maxLength=120, format='string'):
size_of_sides = random.randint(3, maxSides)
sides = []
for x in range(size_of_sides):
@@ -21,5 +21,5 @@ def perimeterOfPolygons(maxSides=12, maxLength=120, format='string'):
perimeter_of_polygons = Generator("Perimeter of Polygons", 96,
- perimeterOfPolygons,
+ gen_func,
["maxSides=12", "maxLength=120"])
diff --git a/mathgenerator/funcs/geometry/pythagorean_theorem.py b/mathgenerator/funcs/geometry/pythagorean_theorem.py
index cfb441f..bede009 100644
--- a/mathgenerator/funcs/geometry/pythagorean_theorem.py
+++ b/mathgenerator/funcs/geometry/pythagorean_theorem.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def pythagoreanTheoremFunc(maxLength=20, format='string'):
+def gen_func(maxLength=20, format='string'):
a = random.randint(1, maxLength)
b = random.randint(1, maxLength)
c = (a**2 + b**2)**0.5
@@ -17,4 +17,4 @@ def pythagoreanTheoremFunc(maxLength=20, format='string'):
pythagorean_theorem = Generator("Pythagorean Theorem", 25,
- pythagoreanTheoremFunc, ["maxLength=20"])
+ gen_func, ["maxLength=20"])
diff --git a/mathgenerator/funcs/geometry/radian_to_deg.py b/mathgenerator/funcs/geometry/radian_to_deg.py
index 932ed97..5c22b75 100644
--- a/mathgenerator/funcs/geometry/radian_to_deg.py
+++ b/mathgenerator/funcs/geometry/radian_to_deg.py
@@ -2,7 +2,7 @@ from .__init__ import *
from numpy import pi
-def radianToDegFunc(max_rad=3, format='string'):
+def gen_func(max_rad=3, format='string'):
# max_rad is supposed to be pi but random can't handle non-integer
a = random.randint(0, max_rad)
b = (180 * a) / pi
@@ -18,5 +18,5 @@ def radianToDegFunc(max_rad=3, format='string'):
return a, b
-radian_to_deg = Generator("Radians to Degrees", 87, radianToDegFunc,
+radian_to_deg = Generator("Radians to Degrees", 87, gen_func,
["max_rad=3"])
diff --git a/mathgenerator/funcs/geometry/sector_area.py b/mathgenerator/funcs/geometry/sector_area.py
index 06b004c..ee60108 100644
--- a/mathgenerator/funcs/geometry/sector_area.py
+++ b/mathgenerator/funcs/geometry/sector_area.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def sectorAreaFunc(maxRadius=49, maxAngle=359, format='string'):
+def gen_func(maxRadius=49, maxAngle=359, format='string'):
r = random.randint(1, maxRadius)
a = random.randint(1, maxAngle)
secArea = float((a / 360) * math.pi * r * r)
@@ -17,5 +17,5 @@ def sectorAreaFunc(maxRadius=49, maxAngle=359, format='string'):
return r, a, formatted_float
-sector_area = Generator("Area of a Sector", 75, sectorAreaFunc,
+sector_area = Generator("Area of a Sector", 75, gen_func,
["maxRadius=49", "maxAngle=359"])
diff --git a/mathgenerator/funcs/geometry/sum_of_polygon_angles.py b/mathgenerator/funcs/geometry/sum_of_polygon_angles.py
index 2b4e542..d715cff 100644
--- a/mathgenerator/funcs/geometry/sum_of_polygon_angles.py
+++ b/mathgenerator/funcs/geometry/sum_of_polygon_angles.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def sumOfAnglesOfPolygonFunc(maxSides=12, format='string'):
+def gen_func(maxSides=12, format='string'):
side_count = random.randint(3, maxSides)
sum = (side_count - 2) * 180
@@ -15,4 +15,4 @@ def sumOfAnglesOfPolygonFunc(maxSides=12, format='string'):
sum_of_polygon_angles = Generator("Sum of Angles of Polygon", 58,
- sumOfAnglesOfPolygonFunc, ["maxSides=12"])
+ gen_func, ["maxSides=12"])
diff --git a/mathgenerator/funcs/geometry/surface_area_cone.py b/mathgenerator/funcs/geometry/surface_area_cone.py
index 7567332..c2c03f5 100644
--- a/mathgenerator/funcs/geometry/surface_area_cone.py
+++ b/mathgenerator/funcs/geometry/surface_area_cone.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def surfaceAreaCone(maxRadius=20, maxHeight=50, unit='m', format='string'):
+def gen_func(maxRadius=20, maxHeight=50, unit='m', format='string'):
a = random.randint(1, maxHeight)
b = random.randint(1, maxRadius)
@@ -18,5 +18,5 @@ def surfaceAreaCone(maxRadius=20, maxHeight=50, unit='m', format='string'):
return a, b, ans, unit
-surface_area_cone = Generator("Surface Area of cone", 38, surfaceAreaCone,
+surface_area_cone = Generator("Surface Area of cone", 38, gen_func,
["maxRadius=20", "maxHeight=50", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/surface_area_cube.py b/mathgenerator/funcs/geometry/surface_area_cube.py
index cbd67d7..e47829a 100644
--- a/mathgenerator/funcs/geometry/surface_area_cube.py
+++ b/mathgenerator/funcs/geometry/surface_area_cube.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def surfaceAreaCube(maxSide=20, unit='m', format='string'):
+def gen_func(maxSide=20, unit='m', format='string'):
a = random.randint(1, maxSide)
ans = 6 * a * a
@@ -15,5 +15,5 @@ def surfaceAreaCube(maxSide=20, unit='m', format='string'):
return a, ans, unit
-surface_area_cube = Generator("Surface Area of Cube", 32, surfaceAreaCube,
+surface_area_cube = Generator("Surface Area of Cube", 32, gen_func,
["maxSide=20", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/surface_area_cuboid.py b/mathgenerator/funcs/geometry/surface_area_cuboid.py
index df9af8c..97abb86 100644
--- a/mathgenerator/funcs/geometry/surface_area_cuboid.py
+++ b/mathgenerator/funcs/geometry/surface_area_cuboid.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def surfaceAreaCuboid(maxSide=20, unit='m', format='string'):
+def gen_func(maxSide=20, unit='m', format='string'):
a = random.randint(1, maxSide)
b = random.randint(1, maxSide)
c = random.randint(1, maxSide)
@@ -18,4 +18,4 @@ def surfaceAreaCuboid(maxSide=20, unit='m', format='string'):
surface_area_cuboid = Generator("Surface Area of Cuboid", 33,
- surfaceAreaCuboid, ["maxSide=20", "unit='m'"])
+ gen_func, ["maxSide=20", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/surface_area_cylinder.py b/mathgenerator/funcs/geometry/surface_area_cylinder.py
index 5e37216..a1eb5d4 100644
--- a/mathgenerator/funcs/geometry/surface_area_cylinder.py
+++ b/mathgenerator/funcs/geometry/surface_area_cylinder.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def surfaceAreaCylinder(maxRadius=20, maxHeight=50, unit='m', format='string'):
+def gen_func(maxRadius=20, maxHeight=50, unit='m', format='string'):
a = random.randint(1, maxHeight)
b = random.randint(1, maxRadius)
ans = int(2 * math.pi * a * b + 2 * math.pi * b * b)
@@ -17,5 +17,5 @@ def surfaceAreaCylinder(maxRadius=20, maxHeight=50, unit='m', format='string'):
surface_area_cylinder = Generator("Surface Area of Cylinder", 34,
- surfaceAreaCylinder,
+ gen_func,
["maxRadius=20", "maxHeight=50", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/surface_area_sphere.py b/mathgenerator/funcs/geometry/surface_area_sphere.py
index 6f6aa31..bf89476 100644
--- a/mathgenerator/funcs/geometry/surface_area_sphere.py
+++ b/mathgenerator/funcs/geometry/surface_area_sphere.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def surfaceAreaSphere(maxSide=20, unit='m', format='string'):
+def gen_func(maxSide=20, unit='m', format='string'):
r = random.randint(1, maxSide)
ans = 4 * math.pi * r * r
@@ -16,4 +16,4 @@ def surfaceAreaSphere(maxSide=20, unit='m', format='string'):
surface_area_sphere = Generator("Surface Area of Sphere", 60,
- surfaceAreaSphere, ["maxSide=20", "unit='m'"])
+ gen_func, ["maxSide=20", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/third_angle_of_triangle.py b/mathgenerator/funcs/geometry/third_angle_of_triangle.py
index 46fffa8..61461f8 100644
--- a/mathgenerator/funcs/geometry/third_angle_of_triangle.py
+++ b/mathgenerator/funcs/geometry/third_angle_of_triangle.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def thirdAngleOfTriangleFunc(maxAngle=89, format='string'):
+def gen_func(maxAngle=89, format='string'):
angle1 = random.randint(1, maxAngle)
angle2 = random.randint(1, maxAngle)
angle3 = 180 - (angle1 + angle2)
@@ -16,4 +16,4 @@ def thirdAngleOfTriangleFunc(maxAngle=89, format='string'):
third_angle_of_triangle = Generator("Third Angle of Triangle", 22,
- thirdAngleOfTriangleFunc, ["maxAngle=89"])
+ gen_func, ["maxAngle=89"])
diff --git a/mathgenerator/funcs/geometry/valid_triangle.py b/mathgenerator/funcs/geometry/valid_triangle.py
index 6f64f4e..70f8a31 100644
--- a/mathgenerator/funcs/geometry/valid_triangle.py
+++ b/mathgenerator/funcs/geometry/valid_triangle.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def isTriangleValidFunc(maxSideLength=50, format='string'):
+def gen_func(maxSideLength=50, format='string'):
sideA = random.randint(1, maxSideLength)
sideB = random.randint(1, maxSideLength)
sideC = random.randint(1, maxSideLength)
@@ -25,5 +25,5 @@ def isTriangleValidFunc(maxSideLength=50, format='string'):
return sideA, sideB, sideC, exists
-valid_triangle = Generator("Triangle exists check", 19, isTriangleValidFunc,
+valid_triangle = Generator("Triangle exists check", 19, gen_func,
["maxSideLength=50"])
diff --git a/mathgenerator/funcs/geometry/volume_cone.py b/mathgenerator/funcs/geometry/volume_cone.py
index e5f915b..ca5f4cf 100644
--- a/mathgenerator/funcs/geometry/volume_cone.py
+++ b/mathgenerator/funcs/geometry/volume_cone.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def volumeCone(maxRadius=20, maxHeight=50, unit='m', format='string'):
+def gen_func(maxRadius=20, maxHeight=50, unit='m', format='string'):
a = random.randint(1, maxHeight)
b = random.randint(1, maxRadius)
ans = int(math.pi * b * b * a * (1 / 3))
@@ -16,5 +16,5 @@ def volumeCone(maxRadius=20, maxHeight=50, unit='m', format='string'):
return a, b, ans, unit
-volume_cone = Generator("Volume of cone", 39, volumeCone,
+volume_cone = Generator("Volume of cone", 39, gen_func,
["maxRadius=20", "maxHeight=50", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/volume_cube.py b/mathgenerator/funcs/geometry/volume_cube.py
index 62d190d..25483d0 100644
--- a/mathgenerator/funcs/geometry/volume_cube.py
+++ b/mathgenerator/funcs/geometry/volume_cube.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def volumeCube(maxSide=20, unit='m', format='string'):
+def gen_func(maxSide=20, unit='m', format='string'):
a = random.randint(1, maxSide)
ans = a**3
@@ -15,5 +15,5 @@ def volumeCube(maxSide=20, unit='m', format='string'):
return a, ans, unit
-volume_cube = Generator("Volum of Cube", 35, volumeCube,
+volume_cube = Generator("Volum of Cube", 35, gen_func,
["maxSide=20", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/volume_cuboid.py b/mathgenerator/funcs/geometry/volume_cuboid.py
index ca0076c..5f38c25 100644
--- a/mathgenerator/funcs/geometry/volume_cuboid.py
+++ b/mathgenerator/funcs/geometry/volume_cuboid.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def volumeCuboid(maxSide=20, unit='m', format='string'):
+def gen_func(maxSide=20, unit='m', format='string'):
a = random.randint(1, maxSide)
b = random.randint(1, maxSide)
c = random.randint(1, maxSide)
@@ -17,5 +17,5 @@ def volumeCuboid(maxSide=20, unit='m', format='string'):
return a, b, c, ans, unit
-volume_cuboid = Generator("Volume of Cuboid", 36, volumeCuboid,
+volume_cuboid = Generator("Volume of Cuboid", 36, gen_func,
["maxSide=20", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/volume_cylinder.py b/mathgenerator/funcs/geometry/volume_cylinder.py
index 230c87a..201ffd1 100644
--- a/mathgenerator/funcs/geometry/volume_cylinder.py
+++ b/mathgenerator/funcs/geometry/volume_cylinder.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def volumeCylinder(maxRadius=20, maxHeight=50, unit='m', format='string'):
+def gen_func(maxRadius=20, maxHeight=50, unit='m', format='string'):
a = random.randint(1, maxHeight)
b = random.randint(1, maxRadius)
ans = int(math.pi * b * b * a)
@@ -16,5 +16,5 @@ def volumeCylinder(maxRadius=20, maxHeight=50, unit='m', format='string'):
return a, b, ans, unit
-volume_cylinder = Generator("Volume of cylinder", 37, volumeCylinder,
+volume_cylinder = Generator("Volume of cylinder", 37, gen_func,
["maxRadius=20", "maxHeight=50", "unit='m'"])
diff --git a/mathgenerator/funcs/geometry/volume_sphere.py b/mathgenerator/funcs/geometry/volume_sphere.py
index ef0b559..0950bd1 100644
--- a/mathgenerator/funcs/geometry/volume_sphere.py
+++ b/mathgenerator/funcs/geometry/volume_sphere.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def volumeSphereFunc(maxRadius=100, format='string'):
+def gen_func(maxRadius=100, format='string'):
r = random.randint(1, maxRadius)
ans = (4 * math.pi / 3) * r**3
@@ -15,5 +15,5 @@ def volumeSphereFunc(maxRadius=100, format='string'):
return r, ans
-volume_sphere = Generator("Volume of Sphere", 61, volumeSphereFunc,
+volume_sphere = Generator("Volume of Sphere", 61, gen_func,
["maxRadius=100"])
diff --git a/mathgenerator/funcs/misc/arithmetic_progression_sum.py b/mathgenerator/funcs/misc/arithmetic_progression_sum.py
index f347161..8e40ee7 100644
--- a/mathgenerator/funcs/misc/arithmetic_progression_sum.py
+++ b/mathgenerator/funcs/misc/arithmetic_progression_sum.py
@@ -1,10 +1,10 @@
from .__init__ import *
-def arithmeticProgressionSumFunc(maxd=100,
- maxa=100,
- maxn=100,
- format='string'):
+def gen_func(maxd=100,
+ maxa=100,
+ maxn=100,
+ format='string'):
d = random.randint(-1 * maxd, maxd)
a1 = random.randint(-1 * maxa, maxa)
a2 = a1 + d
@@ -25,5 +25,5 @@ def arithmeticProgressionSumFunc(maxd=100,
arithmetic_progression_sum = Generator("AP Sum Calculation", 83,
- arithmeticProgressionSumFunc,
+ gen_func,
["maxd=100", "maxa=100", "maxn=100"])
diff --git a/mathgenerator/funcs/misc/arithmetic_progression_term.py b/mathgenerator/funcs/misc/arithmetic_progression_term.py
index 2e84a7d..9977cc9 100644
--- a/mathgenerator/funcs/misc/arithmetic_progression_term.py
+++ b/mathgenerator/funcs/misc/arithmetic_progression_term.py
@@ -1,10 +1,10 @@
from .__init__ import *
-def arithmeticProgressionTermFunc(maxd=100,
- maxa=100,
- maxn=100,
- format='string'):
+def gen_func(maxd=100,
+ maxa=100,
+ maxn=100,
+ format='string'):
d = random.randint(-1 * maxd, maxd)
a1 = random.randint(-1 * maxa, maxa)
a2 = a1 + d
@@ -24,5 +24,5 @@ def arithmeticProgressionTermFunc(maxd=100,
arithmetic_progression_term = Generator("AP Term Calculation", 82,
- arithmeticProgressionTermFunc,
+ gen_func,
["maxd=100", "maxa=100", "maxn=100"])
diff --git a/mathgenerator/funcs/misc/base_conversion.py b/mathgenerator/funcs/misc/base_conversion.py
index d9fd640..f48c2a4 100644
--- a/mathgenerator/funcs/misc/base_conversion.py
+++ b/mathgenerator/funcs/misc/base_conversion.py
@@ -30,7 +30,7 @@ def fromBaseTenTo(n, toBase):
# return int(n,fromBase)
-def baseConversionFunc(maxNum=60000, maxBase=16, format='string'):
+def gen_func(maxNum=60000, maxBase=16, format='string'):
assert type(
maxNum
) == int and maxNum >= 100 and maxNum <= 65536, "maxNum({}) must be >=100 and <=65536".format(
@@ -59,5 +59,5 @@ def baseConversionFunc(maxNum=60000, maxBase=16, format='string'):
n, bases[1])
-base_conversion = Generator("Base Conversion", 94, baseConversionFunc,
+base_conversion = Generator("Base Conversion", 94, gen_func,
["maxNum=60000", "maxBase=16"])
diff --git a/mathgenerator/funcs/misc/binomial_distribution.py b/mathgenerator/funcs/misc/binomial_distribution.py
index 37b812b..f457c63 100644
--- a/mathgenerator/funcs/misc/binomial_distribution.py
+++ b/mathgenerator/funcs/misc/binomial_distribution.py
@@ -13,7 +13,7 @@ def newton_symbol(n, k):
return factorial(n) / (factorial(k) * factorial(n - k))
-def binomialDistFunc(format='string'):
+def gen_func(format='string'):
rejected_fraction = float(random.randint(30, 40)) + random.random()
batch = random.randint(10, 20)
rejections = random.randint(1, 9)
@@ -40,4 +40,4 @@ def binomialDistFunc(format='string'):
binomial_distribution = Generator("Binomial distribution", 109,
- binomialDistFunc, [""])
+ gen_func, [""])
diff --git a/mathgenerator/funcs/misc/celsius_to_fahrenheit.py b/mathgenerator/funcs/misc/celsius_to_fahrenheit.py
index 2846876..2af3285 100644
--- a/mathgenerator/funcs/misc/celsius_to_fahrenheit.py
+++ b/mathgenerator/funcs/misc/celsius_to_fahrenheit.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def celsiustofahrenheitFunc(maxTemp=100, format='string'):
+def gen_func(maxTemp=100, format='string'):
celsius = random.randint(-50, maxTemp)
fahrenheit = (celsius * (9 / 5)) + 32
@@ -17,4 +17,4 @@ def celsiustofahrenheitFunc(maxTemp=100, format='string'):
celsius_to_fahrenheit = Generator("Celsius To Fahrenheit", 81,
- celsiustofahrenheitFunc, ["maxTemp=100"])
+ gen_func, ["maxTemp=100"])
diff --git a/mathgenerator/funcs/misc/common_factors.py b/mathgenerator/funcs/misc/common_factors.py
index 1a5cf7e..76d752f 100644
--- a/mathgenerator/funcs/misc/common_factors.py
+++ b/mathgenerator/funcs/misc/common_factors.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def commonFactorsFunc(maxVal=100, format='string'):
+def gen_func(maxVal=100, format='string'):
a = x = random.randint(1, maxVal)
b = y = random.randint(1, maxVal)
@@ -29,5 +29,5 @@ def commonFactorsFunc(maxVal=100, format='string'):
return a, b, arr
-common_factors = Generator("Common Factors", 40, commonFactorsFunc,
+common_factors = Generator("Common Factors", 40, gen_func,
["maxVal=100"])
diff --git a/mathgenerator/funcs/misc/complex_to_polar.py b/mathgenerator/funcs/misc/complex_to_polar.py
index 82c6288..8ce0fde 100644
--- a/mathgenerator/funcs/misc/complex_to_polar.py
+++ b/mathgenerator/funcs/misc/complex_to_polar.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def complexToPolarFunc(minRealImaginaryNum=-20,
+def gen_func(minRealImaginaryNum=-20,
maxRealImaginaryNum=20,
format='string'):
num = complex(random.randint(minRealImaginaryNum, maxRealImaginaryNum),
@@ -23,5 +23,5 @@ def complexToPolarFunc(minRealImaginaryNum=-20,
complex_to_polar = Generator(
- "Complex To Polar Form", 92, complexToPolarFunc,
+ "Complex To Polar Form", 92, gen_func,
["minRealImaginaryNum=-20, maxRealImaginaryNum=20"])
diff --git a/mathgenerator/funcs/misc/decimal_to_roman_numerals.py b/mathgenerator/funcs/misc/decimal_to_roman_numerals.py
index 8e759b0..53d8cc6 100644
--- a/mathgenerator/funcs/misc/decimal_to_roman_numerals.py
+++ b/mathgenerator/funcs/misc/decimal_to_roman_numerals.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def decimalToRomanNumeralsFunc(maxDecimal=4000, format='string'):
+def gen_func(maxDecimal=4000, format='string'):
x = random.randint(0, maxDecimal)
roman_dict = {
1: "I",
@@ -42,5 +42,5 @@ def decimalToRomanNumeralsFunc(maxDecimal=4000, format='string'):
decimal_to_roman_numerals = Generator("Converts decimal to Roman Numerals", 85,
- decimalToRomanNumeralsFunc,
+ gen_func,
["maxDecimal=4000"])
diff --git a/mathgenerator/funcs/misc/euclidian_norm.py b/mathgenerator/funcs/misc/euclidian_norm.py
index c16adbb..ac3bf00 100644
--- a/mathgenerator/funcs/misc/euclidian_norm.py
+++ b/mathgenerator/funcs/misc/euclidian_norm.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def euclidianNormFunc(maxEltAmt=20, format='string'):
+def gen_func(maxEltAmt=20, format='string'):
vec = [
random.uniform(0, 1000) for i in range(random.randint(2, maxEltAmt))
]
@@ -19,4 +19,4 @@ def euclidianNormFunc(maxEltAmt=20, format='string'):
eucldian_norm = Generator("Euclidian norm or L2 norm of a vector", 69,
- euclidianNormFunc, ["maxEltAmt=20"])
+ gen_func, ["maxEltAmt=20"])
diff --git a/mathgenerator/funcs/misc/gcd.py b/mathgenerator/funcs/misc/gcd.py
index 29a0b62..be47c27 100644
--- a/mathgenerator/funcs/misc/gcd.py
+++ b/mathgenerator/funcs/misc/gcd.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def gcdFunc(maxVal=20, format='string'):
+def gen_func(maxVal=20, format='string'):
a = random.randint(1, maxVal)
b = random.randint(1, maxVal)
x, y = a, b
@@ -18,5 +18,5 @@ def gcdFunc(maxVal=20, format='string'):
return a, b, x
-gcd = Generator("GCD (Greatest Common Denominator)", 10, gcdFunc,
+gcd = Generator("GCD (Greatest Common Denominator)", 10, gen_func,
["maxVal=20"])
diff --git a/mathgenerator/funcs/misc/geometric_mean.py b/mathgenerator/funcs/misc/geometric_mean.py
index cb17de4..1d78182 100644
--- a/mathgenerator/funcs/misc/geometric_mean.py
+++ b/mathgenerator/funcs/misc/geometric_mean.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def geometricMeanFunc(maxValue=100, maxNum=4, format='string'):
+def gen_func(maxValue=100, maxNum=4, format='string'):
a = random.randint(1, maxValue)
b = random.randint(1, maxValue)
c = random.randint(1, maxValue)
@@ -28,4 +28,4 @@ def geometricMeanFunc(maxValue=100, maxNum=4, format='string'):
geometric_mean = Generator("Geometric Mean of N Numbers", 67,
- geometricMeanFunc, ["maxValue=100", "maxNum=4"])
+ gen_func, ["maxValue=100", "maxNum=4"])
diff --git a/mathgenerator/funcs/misc/geometric_progression.py b/mathgenerator/funcs/misc/geometric_progression.py
index e252060..4a15740 100644
--- a/mathgenerator/funcs/misc/geometric_progression.py
+++ b/mathgenerator/funcs/misc/geometric_progression.py
@@ -1,12 +1,12 @@
from .__init__ import *
-def geomProgrFunc(number_values=6,
- min_value=2,
- max_value=12,
- n_term=7,
- sum_term=5,
- format='string'):
+def gen_func(number_values=6,
+ min_value=2,
+ max_value=12,
+ n_term=7,
+ sum_term=5,
+ format='string'):
r = random.randint(min_value, max_value)
a = random.randint(min_value, max_value)
n_term = random.randint(number_values, number_values + 5)
@@ -31,6 +31,6 @@ def geomProgrFunc(number_values=6,
return GP, n_term, sum_term, a, r, n_term, value_nth_term, sum_term, sum_till_nth_term
-geometric_progression = Generator("Geometric Progression", 66, geomProgrFunc, [
+geometric_progression = Generator("Geometric Progression", 66, gen_func, [
"number_values=6", "min_value=2", "max_value=12", "n_term=7", "sum_term=5"
])
diff --git a/mathgenerator/funcs/misc/harmonic_mean.py b/mathgenerator/funcs/misc/harmonic_mean.py
index 44a8e5f..3319305 100644
--- a/mathgenerator/funcs/misc/harmonic_mean.py
+++ b/mathgenerator/funcs/misc/harmonic_mean.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def harmonicMeanFunc(maxValue=100, maxNum=4, format='string'):
+def gen_func(maxValue=100, maxNum=4, format='string'):
a = random.randint(1, maxValue)
b = random.randint(1, maxValue)
@@ -28,5 +28,5 @@ def harmonicMeanFunc(maxValue=100, maxNum=4, format='string'):
return problem, solution
-harmonic_mean = Generator("Harmonic Mean of N Numbers", 68, harmonicMeanFunc,
+harmonic_mean = Generator("Harmonic Mean of N Numbers", 68, gen_func,
["maxValue=100", "maxNum=4"])
diff --git a/mathgenerator/funcs/misc/hcf.py b/mathgenerator/funcs/misc/hcf.py
index 18fde54..83de2ad 100644
--- a/mathgenerator/funcs/misc/hcf.py
+++ b/mathgenerator/funcs/misc/hcf.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def hcfFunc(maxVal=20, format='string'):
+def gen_func(maxVal=20, format='string'):
a = random.randint(1, maxVal)
b = random.randint(1, maxVal)
x, y = a, b
@@ -18,4 +18,4 @@ def hcfFunc(maxVal=20, format='string'):
return a, b, x
-hcf = Generator("HCF (Highest Common Factor)", 51, hcfFunc, ["maxVal=20"])
+hcf = Generator("HCF (Highest Common Factor)", 51, gen_func, ["maxVal=20"])
diff --git a/mathgenerator/funcs/misc/is_leap_year.py b/mathgenerator/funcs/misc/is_leap_year.py
index 011aebc..400f051 100644
--- a/mathgenerator/funcs/misc/is_leap_year.py
+++ b/mathgenerator/funcs/misc/is_leap_year.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def IsLeapYear(minNumber=1900, maxNumber=2099, format='string'):
+def gen_func(minNumber=1900, maxNumber=2099, format='string'):
year = random.randint(minNumber, maxNumber)
problem = "Year " + str(year) + " "
if (year % 4) == 0:
@@ -27,5 +27,5 @@ def IsLeapYear(minNumber=1900, maxNumber=2099, format='string'):
return year, ans
-is_leap_year = Generator("Leap Year or Not", 101, IsLeapYear,
+is_leap_year = Generator("Leap Year or Not", 101, gen_func,
["minNumber=1900", "maxNumber=2099"])
diff --git a/mathgenerator/funcs/misc/lcm.py b/mathgenerator/funcs/misc/lcm.py
index 6e8d1b7..39777e3 100644
--- a/mathgenerator/funcs/misc/lcm.py
+++ b/mathgenerator/funcs/misc/lcm.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def lcmFunc(maxVal=20, format='string'):
+def gen_func(maxVal=20, format='string'):
a = random.randint(1, maxVal)
b = random.randint(1, maxVal)
c = a * b
@@ -21,4 +21,4 @@ def lcmFunc(maxVal=20, format='string'):
return a, b, d
-lcm = Generator("LCM (Least Common Multiple)", 9, lcmFunc, ["maxVal=20"])
+lcm = Generator("LCM (Least Common Multiple)", 9, gen_func, ["maxVal=20"])
diff --git a/mathgenerator/funcs/misc/minutes_to_hours.py b/mathgenerator/funcs/misc/minutes_to_hours.py
index 35b680c..562f414 100644
--- a/mathgenerator/funcs/misc/minutes_to_hours.py
+++ b/mathgenerator/funcs/misc/minutes_to_hours.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def minutesToHoursFunc(maxMinutes=999, format='string'):
+def gen_func(maxMinutes=999, format='string'):
minutes = random.randint(1, maxMinutes)
ansHours = int(minutes / 60)
ansMinutes = minutes % 60
@@ -17,4 +17,4 @@ def minutesToHoursFunc(maxMinutes=999, format='string'):
minutes_to_hours = Generator("Minute to Hour conversion", 102,
- minutesToHoursFunc, ["maxMinutes=999"])
+ gen_func, ["maxMinutes=999"])
diff --git a/mathgenerator/funcs/misc/prime_factors.py b/mathgenerator/funcs/misc/prime_factors.py
index 2632e92..365cbdb 100644
--- a/mathgenerator/funcs/misc/prime_factors.py
+++ b/mathgenerator/funcs/misc/prime_factors.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def primeFactorsFunc(minVal=1, maxVal=200, format='string'):
+def gen_func(minVal=1, maxVal=200, format='string'):
a = random.randint(minVal, maxVal)
n = a
i = 2
@@ -27,5 +27,5 @@ def primeFactorsFunc(minVal=1, maxVal=200, format='string'):
return a, factors
-prime_factors = Generator("Prime Factorisation", 27, primeFactorsFunc,
+prime_factors = Generator("Prime Factorisation", 27, gen_func,
["minVal=1", "maxVal=200"])
diff --git a/mathgenerator/funcs/misc/profit_loss_percent.py b/mathgenerator/funcs/misc/profit_loss_percent.py
index 16369e8..ca75bf9 100644
--- a/mathgenerator/funcs/misc/profit_loss_percent.py
+++ b/mathgenerator/funcs/misc/profit_loss_percent.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def profitLossPercentFunc(maxCP=1000, maxSP=1000, format='string'):
+def gen_func(maxCP=1000, maxSP=1000, format='string'):
cP = random.randint(1, maxCP)
sP = random.randint(1, maxSP)
diff = abs(sP - cP)
@@ -21,5 +21,5 @@ def profitLossPercentFunc(maxCP=1000, maxSP=1000, format='string'):
profit_loss_percent = Generator("Profit or Loss Percent", 63,
- profitLossPercentFunc,
+ gen_func,
["maxCP=1000", "maxSP=1000"])
diff --git a/mathgenerator/funcs/misc/quotient_of_power_same_base.py b/mathgenerator/funcs/misc/quotient_of_power_same_base.py
index 11777a1..5c961f7 100644
--- a/mathgenerator/funcs/misc/quotient_of_power_same_base.py
+++ b/mathgenerator/funcs/misc/quotient_of_power_same_base.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def quotientOfPowerSameBaseFunc(maxBase=50, maxPower=10, format='string'):
+def gen_func(maxBase=50, maxPower=10, format='string'):
base = random.randint(1, maxBase)
power1 = random.randint(1, maxPower)
power2 = random.randint(1, maxPower)
@@ -19,5 +19,5 @@ def quotientOfPowerSameBaseFunc(maxBase=50, maxPower=10, format='string'):
quotient_of_power_same_base = Generator("Quotient of Powers with Same Base",
- 98, quotientOfPowerSameBaseFunc,
+ 98, gen_func,
["maxBase=50", "maxPower=10"])
diff --git a/mathgenerator/funcs/misc/quotient_of_power_same_power.py b/mathgenerator/funcs/misc/quotient_of_power_same_power.py
index 429cbe4..0276920 100644
--- a/mathgenerator/funcs/misc/quotient_of_power_same_power.py
+++ b/mathgenerator/funcs/misc/quotient_of_power_same_power.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def quotientOfPowerSamePowerFunc(maxBase=50, maxPower=10, format='string'):
+def gen_func(maxBase=50, maxPower=10, format='string'):
base1 = random.randint(1, maxBase)
base2 = random.randint(1, maxBase)
power = random.randint(1, maxPower)
@@ -19,5 +19,5 @@ def quotientOfPowerSamePowerFunc(maxBase=50, maxPower=10, format='string'):
quotient_of_power_same_power = Generator("Quotient of Powers with Same Power",
- 99, quotientOfPowerSamePowerFunc,
+ 99, gen_func,
["maxBase=50", "maxPower=10"])
diff --git a/mathgenerator/funcs/misc/set_operation.py b/mathgenerator/funcs/misc/set_operation.py
index e79253f..cdd2a4c 100644
--- a/mathgenerator/funcs/misc/set_operation.py
+++ b/mathgenerator/funcs/misc/set_operation.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def set_operation(minval=3, maxval=7, n_a=4, n_b=5, format='string'):
+def gen_func(minval=3, maxval=7, n_a=4, n_b=5, format='string'):
number_variables_a = random.randint(minval, maxval)
number_variables_b = random.randint(minval, maxval)
a = []
@@ -24,5 +24,5 @@ def set_operation(minval=3, maxval=7, n_a=4, n_b=5, format='string'):
set_operation = Generator("Union,Intersection,Difference of Two Sets", 93,
- set_operation,
+ gen_func,
["minval=3", "maxval=7", "n_a=4", "n_b=5"])
diff --git a/mathgenerator/funcs/misc/signum_function.py b/mathgenerator/funcs/misc/signum_function.py
index 03f3d7a..61903b0 100644
--- a/mathgenerator/funcs/misc/signum_function.py
+++ b/mathgenerator/funcs/misc/signum_function.py
@@ -2,7 +2,7 @@ from .__init__ import *
import random
-def signumFunc(min=-999, max=999, format='string'):
+def gen_func(min=-999, max=999, format='string'):
a = random.randint(min, max)
b = 0
if (a > 0):
@@ -20,5 +20,5 @@ def signumFunc(min=-999, max=999, format='string'):
return a, b
-signum_function = Generator("signum function", 106, signumFunc,
+signum_function = Generator("signum function", 106, gen_func,
["min=-999", "max=999"])
diff --git a/mathgenerator/funcs/misc/surds_comparison.py b/mathgenerator/funcs/misc/surds_comparison.py
index 699418e..30f4230 100644
--- a/mathgenerator/funcs/misc/surds_comparison.py
+++ b/mathgenerator/funcs/misc/surds_comparison.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def surdsComparisonFunc(maxValue=100, maxRoot=10, format='string'):
+def gen_func(maxValue=100, maxRoot=10, format='string'):
radicand1, radicand2 = tuple(random.sample(range(1, maxValue), 2))
degree1, degree2 = tuple(random.sample(range(1, maxRoot), 2))
first = math.pow(radicand1, 1 / degree1)
@@ -24,5 +24,5 @@ def surdsComparisonFunc(maxValue=100, maxRoot=10, format='string'):
return radicand1, degree1, radicand2, degree2, solution
-surds_comparison = Generator("Comparing surds", 55, surdsComparisonFunc,
+surds_comparison = Generator("Comparing surds", 55, gen_func,
["maxValue=100", "maxRoot=10"])
diff --git a/mathgenerator/funcs/statistics/combinations.py b/mathgenerator/funcs/statistics/combinations.py
index a24d9b7..712436c 100644
--- a/mathgenerator/funcs/statistics/combinations.py
+++ b/mathgenerator/funcs/statistics/combinations.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def combinationsFunc(maxlength=20, format='string'):
+def gen_func(maxlength=20, format='string'):
def factorial(a):
d = 1
for i in range(a):
@@ -23,5 +23,5 @@ def combinationsFunc(maxlength=20, format='string'):
return a, b, solution
-combinations = Generator("Combinations of Objects", 30, combinationsFunc,
+combinations = Generator("Combinations of Objects", 30, gen_func,
["maxlength=20"])
diff --git a/mathgenerator/funcs/statistics/conditional_probability.py b/mathgenerator/funcs/statistics/conditional_probability.py
index 7be6083..ebc19a0 100644
--- a/mathgenerator/funcs/statistics/conditional_probability.py
+++ b/mathgenerator/funcs/statistics/conditional_probability.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def conditionalProbFunc(format='string'):
+def gen_func(format='string'):
P_disease = round(2. * random.random(), 2)
true_positive = round(random.random() + float(random.randint(90, 99)), 2)
true_negative = round(random.random() + float(random.randint(90, 99)), 2)
@@ -31,4 +31,4 @@ def conditionalProbFunc(format='string'):
conditional_probability = Generator("Conditional Probability", 107,
- conditionalProbFunc, [""])
+ gen_func, [""])
diff --git a/mathgenerator/funcs/statistics/confidence_interval.py b/mathgenerator/funcs/statistics/confidence_interval.py
index e236d8a..c638685 100644
--- a/mathgenerator/funcs/statistics/confidence_interval.py
+++ b/mathgenerator/funcs/statistics/confidence_interval.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def confidenceIntervalFunc(format='string'):
+def gen_func(format='string'):
n = random.randint(20, 40)
j = random.randint(0, 3)
@@ -41,4 +41,4 @@ def confidenceIntervalFunc(format='string'):
confidence_interval = Generator("Confidence interval For sample S", 54,
- confidenceIntervalFunc, [""])
+ gen_func, [""])
diff --git a/mathgenerator/funcs/statistics/data_summary.py b/mathgenerator/funcs/statistics/data_summary.py
index 1801b06..82ad973 100644
--- a/mathgenerator/funcs/statistics/data_summary.py
+++ b/mathgenerator/funcs/statistics/data_summary.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def dataSummaryFunc(number_values=15, minval=5, maxval=50, format='string'):
+def gen_func(number_values=15, minval=5, maxval=50, format='string'):
random_list = []
for i in range(number_values):
@@ -30,5 +30,5 @@ def dataSummaryFunc(number_values=15, minval=5, maxval=50, format='string'):
data_summary = Generator("Mean,Standard Deviation,Variance", 59,
- dataSummaryFunc,
+ gen_func,
["number_values=15", "minval=5", "maxval=50"])
diff --git a/mathgenerator/funcs/statistics/dice_sum_probability.py b/mathgenerator/funcs/statistics/dice_sum_probability.py
index c05076b..cf662ce 100644
--- a/mathgenerator/funcs/statistics/dice_sum_probability.py
+++ b/mathgenerator/funcs/statistics/dice_sum_probability.py
@@ -1,7 +1,7 @@
from .__init__ import *
-def DiceSumProbFunc(maxDice=3, format='string'):
+def gen_func(maxDice=3, format='string'):
a = random.randint(1, maxDice)
b = random.randint(a, 6 * a)
@@ -32,4 +32,4 @@ def DiceSumProbFunc(maxDice=3, format='string'):
dice_sum_probability = Generator(
"Probability of a certain sum appearing on faces of dice", 52,
- DiceSumProbFunc, ["maxDice=3"])
+ gen_func, ["maxDice=3"])
diff --git a/mathgenerator/funcs/statistics/mean_median.py b/mathgenerator/funcs/statistics/mean_median.py
index 2e47f54..5e619fd 100644
--- a/mathgenerator/funcs/statistics/mean_median.py
+++ b/mathgenerator/funcs/statistics/mean_median.py
@@ -2,7 +2,7 @@ from .__init__ import *
import random
-def meanMedianFunc(maxlen=10, format='string'):
+def gen_func(maxlen=10, format='string'):
randomlist = random.sample(range(1, 99), maxlen)
total = 0
for n in randomlist:
@@ -21,4 +21,4 @@ def meanMedianFunc(maxlen=10, format='string'):
return randomlist, mean, median
-mean_median = Generator("Mean and Median", 76, meanMedianFunc, ["maxlen=10"])
+mean_median = Generator("Mean and Median", 76, gen_func, ["maxlen=10"])
diff --git a/mathgenerator/funcs/statistics/permutation.py b/mathgenerator/funcs/statistics/permutation.py
index 7eaeebe..2c73d99 100644
--- a/mathgenerator/funcs/statistics/permutation.py
+++ b/mathgenerator/funcs/statistics/permutation.py
@@ -3,7 +3,7 @@ from .__init__ import *
import math
-def permutationFunc(maxlength=20, format='string'):
+def gen_func(maxlength=20, format='string'):
a = random.randint(10, maxlength)
b = random.randint(0, 9)
answer = int(math.factorial(a) / (math.factorial(a - b)))
@@ -18,4 +18,4 @@ def permutationFunc(maxlength=20, format='string'):
return a, b, answer
-permutation = Generator("Permutations", 42, permutationFunc, ["maxlength=20"])
+permutation = Generator("Permutations", 42, gen_func, ["maxlength=20"])