2021-12-21 23:00:04 +07:00
2021-10-17 12:20:26 -04:00
2021-10-08 21:47:12 +05:30
2021-10-08 16:36:21 -04:00
2021-05-21 11:08:21 -04:00
2020-10-22 01:37:37 +03:00
2021-10-07 00:52:02 -04:00

mathgenerator

A math problem generator, created for the purpose of giving self-studying students and teaching organizations the means to easily get access to random math problems to suit their needs.

To try out generators, go to https://lukew3.github.io/mathgenerator

See CONTRIBUTING.md for information about how to contribute.

Table of Contents

Installation

The project can be install via pip

pip install mathgenerator

Basic Usage

Here is an example of how you would generate an addition problem:

from mathgenerator import mathgen

#generate an addition problem
problem, solution = mathgen.addition()

#another way to generate an addition problem using genById()
problem, solution = mathgen.genById(0)

Creating a worksheet

If you wish to create a worksheet, you can use the worksheetgen package. Install this with pip install worksheetgen. Here is an example of how a worksheet would be generated.

from mathgenerator import mathgen
from worksheetgen.wg import Worksheet

worksheet = Worksheet("Worksheet title")
worksheet.add_instruction("Instructions")
# Writes 10 problems generated with id 1, [0] at the end specifies to take problem, and not solution.
for _ in range(10):
	worksheet.add_problem(mathgen.genById(1)[0])
worksheet.write_pdf()

This creates the pdf ws.pdf in your current directory

Documentation

  • getGenList() returns a list of all generators in the repository in the format [id, title, self, funcname, subjectname]

  • genById(id) generates a problem, solution set with generator id id in the format [problem, solution]

  • Pass the kwarg format=latex to return problem and solution set as latex. If latex is not available for that generator, the problem will return the string "Latex unavailable"

  • Pass the kwarg format=raw to return just the raw data for each generator. An array of each variable necessary to the generator is returned.

List of Generators

algebra

Id Skill Example problem Example Solution Function Name Kwargs
11 Basic Algebra 9x + 1 = 6 5/9 basic_algebra maxVariable=10
12 Logarithm log2(256) 8 log maxBase=3 maxVal=8
17 Integer Multiplication with 2x2 Matrix 5 * 7, 9], [8, 0 = 35,45],[40,0 multiply_int_to_22_matrix maxMatrixVal=10 maxRes=100
20 Midpoint of the two point (-19,-16),(-13,-3)= (-16.0,-9.5) midpoint_of_two_points maxValue=20
21 Factoring Quadratic x^2+2x-80 (x-8)(x+10) factoring range_x1=10 range_x2=10
23 Solve a System of Equations in R^2 8x + y = -57, 4x - 6y = -22 x = -7, y = -1 system_of_equations range_x=10 range_y=10 coeff_mult_range=10
24 Distance between 2 points Find the distance between (16, 20) and (-9, 15) sqrt(650) distance_two_points maxValXY=20 minValXY=-20
26 Linear Equations 9x = 90, -3x + 15y = -195 x = 10, y = -11 linear_equations n=2 varRange=20 coeffRange=20
41 Intersection of Two Lines Find the point of intersection of the two lines: y = -5/4x - 8 and y = -5/4x No Solution intersection_of_two_lines minM=-10 maxM=10 minB=-10 maxB=10 minDenominator=1 maxDenominator=6
43 Cross Product of 2 Vectors [-2, 12, -19] X [18, -15, -13] = [-441, -368, -186] vector_cross minVal=-20 maxVal=20
45 Simple Interest Simple interest for a principle amount of 5281 dollars, 10% rate of interest and for a time period of 2 years is = 1056.2 simple_interest maxPrinciple=10000 maxRate=10 maxTime=10
46 Multiplication of two matrices Multiply
99-1
2-36
-1-57
7-3-4
and
9-6
80
1-1
152-53
0-18
-42-1
35-38
matrix_multiplication maxVal=100 max_dim=10
50 Quadratic Equation Zeros of the Quadratic Equation 47x^2+152x+82=0 [-0.68, -2.55] quadratic_equation maxVal=100
65 Multiplication of 2 complex numbers (16+11j) * (-3-17j) = (139-305j) multiply_complex_numbers minRealImaginaryNum=-20 maxRealImaginaryNum=20
72 Dot Product of 2 Vectors [-19, -4, -7] . [19, 3, 0] = -373 vector_dot minVal=-20 maxVal=20
74 Inverse of a Matrix Inverse of Matrix Matrix(71, 65, 76], [97, 27, 8], [37, 17, 66) is: Matrix(-823/115312, 1499/115312, 383/57656], [3053/115312, -937/115312, -1701/57656], [-325/115312, -599/115312, 1097/57656) invert_matrix SquareMatrixDimension=3 MaxMatrixElement=99 OnlyIntegerElementsInInvertedMatrix=False
77 Determinant to 2x2 Matrix Det(74, 93], [61, 69) = -567 int_matrix_22_determinant maxMatrixVal=100
78 Compound Interest Compound interest for a principle amount of 4617 dollars, 10% rate of interest and for a time period of 5 year is = 7435.72 compound_interest maxPrinciple=10000 maxRate=10 maxTime=10
100 complex Quadratic Equation Find the roots of given Quadratic Equation x^2 + 7x + 8 = 0 simplified solution : ((-1.438, -5.562)), generalized solution : ((-7 + sqrt(17))/21, (-7 - sqrt(17))/21) complex_quadratic prob_type=0 max_range=10
105 Combine Like terms 2x^3 + 1x^4 + 1x^4 + 9x^3 + 8x^1 + 6x^6 + 10x^3 8x^1 + 21x^3 + 2x^4 + 6x^6 combine_like_terms maxCoef=10 maxExp=20 maxTerms=10
111 Expanding Factored Binomial (10x+5)(-1x-8) -10x^2-85x-40 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 46+46= 92 addition maxSum=99 maxAddend=50
1 Subtraction 38-38= 0 subtraction maxMinuend=99 maxDiff=99
2 Multiplication 10*4= 40 multiplication maxMulti=12
3 Division 408/24= 17 division maxA=25 maxB=25
6 Square Root sqrt(64)= 8 square_root minNo=1 maxNo=12
8 Square 6^2= 36 square maxSquareNum=20
13 Complex Division 64/36= 1.78 complex_division maxRes=99 maxDivid=99
16 Fraction Division (4/8)/(6/4) 1/3 divide_fractions maxVal=10
28 Fraction Multiplication (10/6)*(9/3) 5 fraction_multiplication maxVal=10
31 Factorial 1! = 1 factorial maxInput=6
44 Compare Fractions Which symbol represents the comparison between 3/1 and 6/5? > compare_fractions maxVal=10
47 Cube Root What is the cube root of 551 up to 2 decimal places? 8.2 cube_root minNo=1 maxNo=1000
53 Exponentiation 19^3 = 6859 exponentiation maxBase=20 maxExpo=10
71 Absolute difference between two numbers 30-67 = 37
80 Percentage of a number What is 42% of 26? 10.92 percentage maxValue=99 maxpercentage=99
90 isprime Is 24 prime? No is_prime max_num=100
97 Power of Powers Simplify 9^2^4= 9^8 power_of_powers maxBase=50 maxPower=10
118 Percentage difference What is the percentage difference between 176 and 94? 60.74% percentage_difference maxValue=200 minValue=0
119 Percentage error Find the percentage error when observed value equals 71 and exact value equals 62. 14.52% percentage_error maxValue=100 minValue=-100
120 Greatest Common Divisor of N Numbers GCD(94855038,203120243)= 1 greatest_common_divisor numbersCount=2 maximalNumberLimit=10**9

calculus

Id Skill Example problem Example Solution Function Name Kwargs
7 Power Rule Differentiation 3x^1 3x^0 power_rule_differentiation maxCoef=10 maxExp=10 maxTerms=5
48 Power Rule Integration 3x^5 (3/5)x^6 + c power_rule_integration maxCoef=10 maxExp=10 maxTerms=5
88 Differentiation differentiate w.r.t x : d(ln(x)+4*x^(-2))/dx 1/x - 8/x^3 differentiation diff_lvl=2
89 Definite Integral of Quadratic Equation The definite integral within limits 0 to 1 of the equation 24x^2 + 68x + 20 is = 62.0 definite_integral max_coeff=100
110 Stationary Points f(x)=9x^3 + x^2 + 6x + 1 stationary_points maxExp=3 maxCoef=10

computer_science

Id Skill Example problem Example Solution Function Name Kwargs
4 Binary Complement 1s 0100= 1011 binary_complement_1s maxDigits=10
5 Modulo Division 53%57= 53 modulo_division maxRes=99 maxModulo=99
14 Decimal to Binary Binary of 29= 11101 decimal_to_binary max_dec=99
15 Binary to Decimal 0000001000 8 binary_to_decimal max_dig=10
56 Fibonacci Series The Fibonacci Series of the first 5 numbers is ? [0, 1, 1, 2, 3] fibonacci_series minNo=1
62 nth Fibonacci number What is the 29th Fibonacci number? 514229 nth_fibonacci_number maxN=100
64 Binary to Hexidecimal 0000101001 0x29 binary_to_hex max_dig=10
73 Binary 2's Complement 2's complement of 11 = 1 binary_2s_complement maxDigits=10
79 Decimal to Hexadecimal Binary of 599= 0x257 decimal_to_hexadeci max_dec=1000
84 Converts decimal to octal The decimal number 836 in Octal is: 0o1504 decimal_to_octal maxDecimal=4096
91 Binary Coded Decimal to Integer Integer of Binary Coded Decimal 4 is = 18723 bcd_to_decimal maxNumber=10000
103 Decimal to Binary Coded Decimal BCD of Decimal Number 9069 is = 23613 decimal_to_bcd maxNumber=10000

geometry

Id Skill Example problem Example Solution Function Name Kwargs
18 Area of Triangle Area of triangle with side lengths: 16 12 24 = 85.32 area_of_triangle maxA=20 maxB=20
19 Triangle exists check Does triangle with sides 19, 12 and 38 exist? No valid_triangle maxSideLength=50
22 Third Angle of Triangle Third angle of triangle with angles 5 and 24 = 151 third_angle_of_triangle maxAngle=89
25 Pythagorean Theorem The hypotenuse of a right triangle given the other two lengths 17 and 4 = 17.46 pythagorean_theorem maxLength=20
29 Angle of a Regular Polygon Find the angle of a regular polygon with 11 sides 147.27 angle_regular_polygon minVal=3 maxVal=20
32 Surface Area of Cube Surface area of cube with side = 16m is 1536 m^2 surface_area_cube maxSide=20 unit='m'
33 Surface Area of Cuboid Surface area of cuboid with sides = 8m, 19m, 4m is 520 m^2 surface_area_cuboid maxSide=20 unit='m'
34 Surface Area of Cylinder Surface area of cylinder with height = 13m and radius = 15m is 2638 m^2 surface_area_cylinder maxRadius=20 maxHeight=50 unit='m'
35 Volume of Cube Volume of cube with side = 17m is 4913 m^3 volume_cube maxSide=20 unit='m'
36 Volume of Cuboid Volume of cuboid with sides = 1m, 9m, 3m is 27 m^3 volume_cuboid maxSide=20 unit='m'
37 Volume of cylinder Volume of cylinder with height = 24m and radius = 10m is 7539 m^3 volume_cylinder maxRadius=20 maxHeight=50 unit='m'
38 Surface Area of cone Surface area of cone with height = 23m and radius = 8m is 813 m^2 surface_area_cone maxRadius=20 maxHeight=50 unit='m'
39 Volume of cone Volume of cone with height = 43m and radius = 15m is 10131 m^3 volume_cone maxRadius=20 maxHeight=50 unit='m'
49 Fourth Angle of Quadrilateral Fourth angle of quadrilateral with angles 156 , 43, 138 = 23 fourth_angle_of_quadrilateral maxAngle=180
57 Trigonometric Values What is sin(60)? √3/2 basic_trigonometry angles=[0, 30, 45, 60, 90] functions=['sin', 'cos', 'tan']
58 Sum of Angles of Polygon Sum of angles of polygon with 12 sides = 1800 sum_of_polygon_angles maxSides=12
60 Surface Area of Sphere Surface area of Sphere with radius = 19m is 4536.459791783661 m^2 surface_area_sphere maxSide=20 unit='m'
61 Volume of Sphere Volume of sphere with radius 5 m = 523.5987755982989 m^3 volume_sphere maxRadius=100
70 Angle between 2 vectors angle between the vectors [664.48, 165.45, 296.5, 75.31, 543.59] and [508.66, 56.85, 577.71, 827.47, 628.72] is: 0.69 radians angle_btw_vectors maxEltAmt=20
75 Area of a Sector Given radius, 13 and angle, 229. Find the area of the sector. Area of sector = 337.72994 sector_area maxRadius=49 maxAngle=359
86 Degrees to Radians Angle 33 in radians is = 0.58 degree_to_rad max_deg=360
87 Radians to Degrees Angle 2 in degrees is = 114.59 radian_to_deg max_rad=3
95 Curved surface area of a cylinder What is the curved surface area of a cylinder of radius, 8 and height, 52? CSA of cylinder = 2613.81 curved_surface_area_cylinder maxRadius=49 maxHeight=99
96 Perimeter of Polygons The perimeter of a 9 sided polygon with lengths of [88, 27, 9, 118, 110, 24, 70, 11, 45]cm is: 502 perimeter_of_polygons maxSides=12 maxLength=120
104 Circumference Circumference of circle with radius 88 552.9203070318035 circumference maxRadius=100
108 Arc length of Angle Given radius, 31 and angle, 313. Find the arc length of the angle. Arc length of the angle = 169.34930 arc_length maxRadius=49 maxAngle=359
112 Area of Circle Area of circle with radius 73 16748.285714285714 area_of_circle maxRadius=100
113 Volume of frustum Volume of frustum with height = 35m and r1 = 17m is and r2 = 17m is 31777.0 m^3 volume_frustum maxR1=20 maxR2=20 maxHeight=50 unit='m'
114 Equation of line from two points What is the equation of the line between points (-2,2) and (-12,2) in slope-intercept form? y = 2 equation_of_line_from_two_points maxCoordinate=20 minCoordinate=-20
115 Area of Circle given center and a point on circle Area of circle with center (7,-10) and passing through (12.0, -10.0) is 78.54 area_of_circle_given_center_and_point maxCoordinate = 10 maxRadius=10
117 Volume of Hemisphere Volume of hemisphere with radius 40 m = 134041.287 m^3 volume_hemisphere maxRadius=100

misc

Id Skill Example problem Example Solution Function Name Kwargs
9 LCM (Least Common Multiple) LCM of 4 and 1 = 4 lcm maxVal=20
10 GCD (Greatest Common Denominator) GCD of 12 and 16 = 4 gcd maxVal=20
27 Prime Factorisation Find prime factors of 153 [3, 3, 17] prime_factors minVal=1 maxVal=200
40 Common Factors Common Factors of 16 and 35 = [1] common_factors maxVal=100
51 HCF (Highest Common Factor) HCF of 7 and 20 = 1 hcf maxVal=20
55 Comparing surds Fill in the blanks 27^(1/1) _ 41^(1/5) > surds_comparison maxValue=100 maxRoot=10
63 Profit or Loss Percent Loss percent when CP = 992 and SP = 226 is: 77.21774193548387 profit_loss_percent maxCP=1000 maxSP=1000
66 Geometric Progression For the given GP [12, 60, 300, 1500, 7500, 37500] ,Find the value of a,common ratio,6th term value, sum upto 11th term The value of a is 12, common ratio is 5 , 6th term is 37500 , sum upto 11th term is 146484372.0 geometric_progression number_values=6 min_value=2 max_value=12 n_term=7 sum_term=5
67 Geometric Mean of N Numbers Geometric mean of 3 numbers 100 , 84 and 72 = (1008472)^(1/3) = 84.56758478477869 geometric_mean maxValue=100 maxNum=4
68 Harmonic Mean of N Numbers Harmonic mean of 3 numbers 34 , 66 and 23 = 3/((1/34) + (1/66) + (1/23)) = 34.074823943661976 harmonic_mean maxValue=100 maxNum=4
69 Euclidian norm or L2 norm of a vector Euclidian norm or L2 norm of the vector[467.6564096815179, 866.2459441128785, 444.61787343048064, 585.2159133530282, 743.2708752242344, 955.8670020824324, 294.4392659924482, 454.2334460978408, 716.9511578376221, 237.01192966484697, 40.69459597229896, 950.1599207985703] is: 2177.855972998188 euclidian_norm maxEltAmt=20
81 Celsius To Fahrenheit Convert 91 degrees Celsius to degrees Fahrenheit = 195.8 celsius_to_fahrenheit maxTemp=100
82 AP Term Calculation Find the term number 44 of the AP series: 89, 23, -43 ... -2749 arithmetic_progression_term maxd=100 maxa=100 maxn=100
83 AP Sum Calculation Find the sum of first 32 terms of the AP series: -95, -41, 13 ... 23744.0 arithmetic_progression_sum maxd=100 maxa=100 maxn=100
85 Converts decimal to Roman Numerals The number 0 in Roman Numerals is: CDXCV decimal_to_roman_numerals maxDecimal=4000
92 Complex To Polar Form 18.44(14.0theta + i12.0theta) 0.71 complex_to_polar minRealImaginaryNum=-20, maxRealImaginaryNum=20
93 Union,Intersection,Difference of Two Sets Given the two sets a={1, 10, 4, 5} ,b={3, 5, 6, 7, 9}.Find the Union,intersection,a-b,b-a and symmetric difference Union is {1, 3, 4, 5, 6, 7, 9, 10},Intersection is {5}, a-b is {1, 10, 4},b-a is {9, 3, 6, 7}, Symmetric difference is {1, 3, 4, 6, 7, 9, 10} set_operation minval=3 maxval=7 n_a=4 n_b=5
94 Base Conversion Convert 10C4 from base 14 to base 10. 2916 base_conversion maxNum=60000 maxBase=16
98 Quotient of Powers with Same Base The Quotient of 11^4 and 11^4 = 11^(4-4) = 11^0 1 quotient_of_power_same_base maxBase=50 maxPower=10
99 Quotient of Powers with Same Power The Quotient of 19^5 and 44^5 = (19/44)^5 = 0.4318181818181818^5 0.01501428385845167 quotient_of_power_same_power maxBase=50 maxPower=10
101 Leap Year or Not Year 2050 is not a leap year is_leap_year minNumber=1900 maxNumber=2099
102 Minute to Hour conversion Convert 182 minutes to Hours & Minutes 3 hours and 2 minutes minutes_to_hours maxMinutes=999
106 signum function signum of 790 is = 1 signum_function min=-999 max=999
109 Binomial distribution A manufacturer of metal pistons finds that, on average, 33.82% of the pistons they manufacture are rejected because they are incorrectly sized. What is the probability that a batch of 17 pistons will contain no more than 7 rejected pistons? 81.67 binomial_distribution ``
116 Factors of a number Factors of 940 = [1, 2, 4, 5, 10, 20, 47, 94, 188, 235, 470, 940] Factors maxVal=1000
121 Product of scientific notaions Product of scientific notations 7.86x10^95 and 7.0x10^-3 = 5.5x10^93 product_of_scientific_notations minExpVal=-100 maxExpVal=100

statistics

Id Skill Example problem Example Solution Function Name Kwargs
30 Combinations of Objects Number of combinations from 17 objects picked 8 at a time 24310 combinations maxlength=20
42 Permutations Number of Permutations from 17 objects picked 6 at a time = 8910720 permutation maxlength=20
52 Probability of a certain sum appearing on faces of dice If 2 dice are rolled at the same time, the probability of getting a sum of 5 = 4/36 dice_sum_probability maxDice=3
54 Confidence interval For sample S The confidence interval for sample [240, 260, 289, 237, 222, 281, 287, 238, 263, 234, 214, 277, 239, 202, 203, 236, 299, 235, 219, 246, 267, 274, 201, 252, 200, 288, 206, 232, 296, 255, 285, 259, 216] with 99% confidence is (260.50948917236036, 233.5511168882457) confidence_interval ``
59 Mean,Standard Deviation,Variance Find the mean,standard deviation and variance for the data[42, 9, 22, 22, 24, 32, 16, 40, 44, 11, 50, 48, 37, 27, 47] The Mean is 31.4 , Standard Deviation is 176.5066666666667, Variance is 13.285581156527053 data_summary number_values=15 minval=5 maxval=50
76 Mean and Median Given the series of numbers [11, 16, 36, 50, 65, 68, 80, 85, 94, 96]. find the arithmatic mean and mdian of the series Arithmetic mean of the series is 60.1 and Arithmetic median of this series is 66.5 mean_median maxlen=10
107 Conditional Probability Someone tested positive for a nasty disease which only 1.02% of population have. Test sensitivity (true positive) is equal to SN= 98.33% whereas test specificity (true negative) SP= 96.76%. What is the probability that this guy really has that disease? 23.82% conditional_probability ``
Description
A math problem generator, created for the purpose of giving self-studying students and teaching organizations the means to easily get access to high-quality, generated math problems to suit their needs.
Readme MIT 2.2 MiB
Languages
Python 99.6%
Makefile 0.3%