# 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
If you have an idea for a generator, please add it as an issue and tag it with the "New Generator" label.
## Usage
The project can be install via pip
```bash
pip install mathgenerator
```
Here is an example of how you would generate an addition problem:
```python
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)
```
## Documentation
`getGenList()` returns a list of all generators in the repository in the format `[id, title, self, funcname]`
`genById(id)` generates a problem, solution set with generator id `id` in the form of a list in the format `[problem, solution]`
`makePdf(id, count)` creates a printable pdf worksheet with `count` problems generated by the generator with id `id`.
## List of Generators
| Id | Skill | Example problem | Example Solution | Function Name |
|------|-------|-----------------|------------------|---------------|
| 0 | Addition | 30+50= | 80 | addition |
| 1 | Subtraction | 75-7= | 68 | subtraction |
| 2 | Multiplication | 23*3= | 69 | multiplication |
| 3 | Division | 230/10 = | 23 | division |
| 4 | Binary Complement 1s | 01110= | 10001 | binary_complement_1s |
| 5 | Modulo Division | 92%37= | 18 | modulo_division |
| 6 | Square Root | sqrt(144)= | 12 | square_root |
| 7 | Power Rule Differentiation | 7x^10 | 70x^9 | power_rule_differentiation |
| 8 | Square | 6^2= | 36 | square |
| 9 | LCM (Least Common Multiple) | LCM of 15 and 8 = | 120 | lcm |
| 10 | GCD (Greatest Common Denominator) | GCD of 16 and 13 = | 1 | gcd |
| 11 | Basic Algebra | 3x + 4 = 6 | 2/3 | basic_algebra |
| 12 | Logarithm | log3(9) | 2 | log |
| 13 | Complex Division | 4/29= | 0.14 | complex_division |
| 14 | Decimal to Binary | Binary of 70= | 1000110 | decimal_to_binary |
| 15 | Binary to Decimal | 110000 | 48 | binary_to_decimal |
| 16 | Fraction Division | (2/9)/(9/10) | 20/81 | divide_fractions |
| 17 | Integer Multiplication with 2x2 Matrix | 4 * [[7, 4], [10, 2]] = | [[28,16],[40,8]] | multiply_int_to_22_matrix |
| 18 | Area of Triangle | Area of triangle with side lengths: 7 20 17 = | 57.445626465380286 | area_of_triangle |
| 19 | Triangle exists check | Does triangle with sides 20, 18 and 34 exist? | Yes | valid_triangle |
| 20 | Midpoint of the two point | (20,20),(12,14)= | (16.0,17.0) | midpoint_of_two_points |
| 21 | Factoring Quadratic | x^2+2x | (x+2)(x) | factoring |
| 22 | Third Angle of Triangle | Third angle of triangle with angles 16 and 2 = | 162 | third_angle_of_triangle |
| 23 | Solve a System of Equations in R^2 | 2x - 4y = 44, -9x - 4y = 22 | x = 2, y = -10 | system_of_equations |
| 24 | Distance between 2 points | Find the distance between (10, 1) and (-17, 8) | sqrt(778) | distance_two_points |
| 25 | Pythagorean Theorem | The hypotenuse of a right triangle given the other two lengths 19 and 1 = | 19.03 | pythagorean_theorem |
| 26 | Linear Equations | 2x + 15y = -211, 11x + -11y = 242 | x = 7, y = -15 | linear_equations |
| 27 | Prime Factorisation | Find prime factors of 199 | [199] | prime_factors |
| 28 | Fraction Multiplication | (6/7)*(9/5) | 54/35 | fraction_multiplication |
| 29 | Angle of a Regular Polygon | Find the angle of a regular polygon with 9 sides | 140.0 | angle_regular_polygon |
| 30 | Combinations of Objects | Number of combinations from 17 objects picked 2 at a time | 136 | combinations |
| 31 | Factorial | 6! = | 720 | factorial |
| 32 | Surface Area of Cube | Surface area of cube with side = 8m is | 384 m^2 | surface_area_cube |
| 33 | Surface Area of Cuboid | Surface area of cuboid with sides = 8m, 1m, 3m is | 70 m^2 | surface_area_cuboid |
| 34 | Surface Area of Cylinder | Surface area of cylinder with height = 4m and radius = 14m is | 1583 m^2 | surface_area_cylinder |
| 35 | Volum of Cube | Volume of cube with side = 13m is | 2197 m^3 | volume_cube |
| 36 | Volume of Cuboid | Volume of cuboid with sides = 14m, 17m, 18m is | 4284 m^3 | volume_cuboid |
| 37 | Volume of cylinder | Volume of cylinder with height = 45m and radius = 9m is | 11451 m^3 | volume_cylinder |
| 38 | Surface Area of cone | Surface area of cone with height = 40m and radius = 20m is | 4066 m^2 | surface_area_cone |
| 39 | Volume of cone | Volume of cone with height = 40m and radius = 4m is | 670 m^3 | volume_cone |
| 40 | Common Factors | Common Factors of 5 and 94 = | [1] | common_factors |
| 41 | Intersection of Two Lines | Find the point of intersection of the two lines: y = -6/4x + 10 and y = 10x - 2 | (24/23, 194/23) | intersection_of_two_lines |
| 42 | Permutations | Number of Permutations from 10 objects picked 0 at a time = | 1 | permutation |
| 43 | Cross Product of 2 Vectors | [-19, 5, 14] X [19, -3, -14] = | [-28, 0, -38] | vector_cross |
| 44 | Compare Fractions | Which symbol represents the comparison between 2/9 and 7/3? | < | compare_fractions |
| 45 | Simple Interest | Simple interest for a principle amount of 2924 dollars, 2% rate of interest and for a time period of 8 years is = | 467.84 | simple_interest |
| 46 | Multiplication of two matrices | Multiply
and | | 9 | 0 | 114 | 16 |
| -13 | -50 | 102 | 137 |
| 35 | 40 | 102 | -36 |
| matrix_multiplication |
| 47 | Cube Root | cuberoot of 113 upto 2 decimal places is: | 4.83 | cube_root |
| 48 | Power Rule Integration | 3x^5 + 1x^10 + 10x^10 + 10x^9 + 1x^6 | (3/5)x^6 + (1/10)x^11 + (10/10)x^11 + (10/9)x^10 + (1/6)x^7 + c | power_rule_integration |
| 49 | Fourth Angle of Quadrilateral | Fourth angle of quadrilateral with angles 165 , 67, 58 = | 70 | fourth_angle_of_quadrilateral |
| 50 | Quadratic Equation | Zeros of the Quadratic Equation 94x^2+200x+90=0 | [-0.65, -1.48] | quadratic_equation |
| 51 | HCF (Highest Common Factor) | HCF of 7 and 12 = | 1 | hcf |
| 52 | Probability of a certain sum appearing on faces of dice | If 3 dice are rolled at the same time, the probability of getting a sum of 16 = | 6/216 | dice_sum_probability |
| 53 | Exponentiation | 16^3 = | 4096 | exponentiation |
| 54 | Confidence interval For sample S | The confidence interval for sample [200, 282, 224, 297, 230, 261, 260, 223, 290, 203, 268, 295, 202, 280, 210, 274, 214, 270, 205, 258, 237, 265] with 80% confidence is | (256.5414375664878, 238.73128970623947) | confidence_interval |
| 55 | Comparing surds | Fill in the blanks 15^(1/6) _ 86^(1/5) | < | surds_comparison |
| 56 | Fibonacci Series | The Fibonacci Series of the first 6 numbers is ? | [0, 1, 1, 2, 3, 5] | fibonacci_series |
| 57 | Trigonometric Values | What is sin(90)? | 1 | basic_trigonometry |
| 58 | Sum of Angles of Polygon | Sum of angles of polygon with 5 sides = | 540 | sum_of_polygon_angles |
| 59 | Mean,Standard Deviation,Variance | Find the mean,standard deviation and variance for the data[29, 30, 37, 47, 25, 21, 33, 33, 19, 22, 36, 16, 7, 26, 46] | The Mean is 28.466666666666665 , Standard Deviation is 109.71555555555557, Variance is 10.474519347232864 | data_summary |
| 60 | Surface Area of Sphere | Surface area of Sphere with radius = 16m is | 3216.990877275948 m^2 | surface_area_sphere |
| 61 | Volume of Sphere | Volume of sphere with radius 86 m = | 2664305.1424956126 m^3 | volume_sphere |
| 62 | nth Fibonacci number | What is the 27th Fibonacci number? | 196418 | nth_fibonacci_number |
| 63 | Profit or Loss Percent | Profit percent when CP = 644 and SP = 662 is: | 2.7950310559006213 | profit_loss_percent |
| 64 | Binary to Hexidecimal | 1001100 | 0x4c | binary_to_hex |
| 65 | Multiplication of 2 complex numbers | (-4+10j) * -14j = | (140+56j) | multiply_complex_numbers |
| 66 | Geometric Progression | For the given GP [4, 12, 36, 108, 324, 972] ,Find the value of a,common ratio,7th term value, sum upto 11th term | The value of a is 4, common ratio is 3 , 7th term is 2916 , sum upto 11th term is 354292.0 | geometric_progression |
| 67 | Geometric Mean of N Numbers | Geometric mean of 2 numbers 8 and 39 = | (8*39)^(1/2) = 17.663521732655695 | geometric_mean |
| 68 | Harmonic Mean of N Numbers | Harmonic mean of 3 numbers 70 , 28 and 10 = | 3/((1/70) + (1/28) + (1/10)) = 20.0 | harmonic_mean |
| 69 | Euclidian norm or L2 norm of a vector | Euclidian norm or L2 norm of the vector[140.27767298648374, 455.13963882440834, 712.0553226043899, 459.3121590782242, 524.4218909490598, 750.5372175572093, 808.8045224974901, 383.6429461786214, 429.4419005181599, 678.4158119220333, 949.0750177704684, 959.5226153129328, 480.3240208778324, 106.9115204040202] is: | 2300.592987768802 | euclidian_norm |
| 70 | Angle between 2 vectors | angle between the vectors [411.42, 822.89, 457.69, 983.28] and [516.87, 275.57, 334.47, 19.0] is: | 0.88 radians | angle_btw_vectors |
| 71 | Absolute difference between two numbers | Absolute difference between numbers 14 and -97 = | 111 | absolute_difference |
| 72 | Dot Product of 2 Vectors | [-2, 0, -18] . [9, 10, 15] = | -288 | vector_dot |
| 73 | Binary 2's Complement | 2's complement of 10 = | 10 | binary_2s_complement |
| 74 | Inverse of a Matrix | Inverse of Matrix Matrix([[71, 25, 61], [21, 23, 8], [41, 70, 11]]) is: | Matrix([[-307/12775, 799/2555, -1203/12775], [97/12775, -344/2555, 713/12775], [527/12775, -789/2555, 1108/12775]]) | invert_matrix |
| 75 | Area of a Sector | Given radius, 13 and angle, 322. Find the area of the sector. | Area of sector = 474.88664 | sector_area |
| 76 | Mean and Median | Given the series of numbers [42, 66, 61, 2, 25, 95, 18, 14, 96, 6]. find the arithmatic mean and mdian of the series | Arithmetic mean of the series is 42.5 and Arithmetic median of this series is 33.5 | mean_median |
| 77 | Determinant to 2x2 Matrix | Det([[67, 22], [83, 9]]) = | -1223 | int_matrix_22_determinant |
| 78 | Compound Interest | Compound interest for a principle amount of 1159 dollars, 3% rate of interest and for a time period of 9 year is = | 1512.23 | compound_interest |
| 79 | Decimal to Hexadecimal | Binary of 260= | 0x104 | decimal_to_hexadeci |
| 80 | Percentage of a number | What is 40% of 80? | Required percentage = 32.00% | percentage |
| 81 | Celsius To Fahrenheit | Convert 77 degrees Celsius to degrees Fahrenheit = | 170.6 | celsius_to_fahrenheit |
| 82 | AP Term Calculation | Find the term number 19 of the AP series: 66, 109, 152 ... | 840 | arithmetic_progression_term |
| 83 | AP Sum Calculation | Find the sum of first 84 terms of the AP series: 59, 110, 161 ... | 182742.0 | arithmetic_progression_sum |
| 84 | Converts decimal to octal | The decimal number 983 in Octal is: | 0o1727 | decimal_to_octal |
| 85 | Converts decimal to Roman Numerals | The number 1994 in Roman Numerals is: | MCMXCIV | decimal_to_roman_numerals |
| 86 | Degrees to Radians | Angle 82 in radians is = | 1.43 | degree_to_rad |
| 87 | Radians to Degrees | Angle 0 in degrees is = | 0.0 | radian_to_deg |
| 88 | Differentiation | differentiate w.r.t x : d(sin(x)+7*x^3)/dx | 21*x^2 + cos(x) | differentiation |
| 89 | Definite Integral of Quadratic Equation | The definite integral within limits 0 to 1 of the equation 65x^2 + 91x + 72 is = | 139.1667 | definite_integral |
| 90 | isprime | 64 | False | is_prime |
| 91 | Binary Coded Decimal to Integer | Integer of Binary Coded Decimal 1 is = | 4674 | bcd_to_decimal |
| 92 | Complex To Polar Form | rexp(itheta) = | 15.52exp(i1.83) | complex_to_polar |
| 93 | Union,Intersection,Difference of Two Sets | Given the two sets a={1, 3, 7, 8, 10} ,b={9, 10, 2, 5}.Find the Union,intersection,a-b,b-a and symmetric difference | Union is {1, 2, 3, 5, 7, 8, 9, 10},Intersection is {10}, a-b is {8, 1, 3, 7},b-a is {9, 2, 5}, Symmetric difference is {1, 2, 3, 5, 7, 8, 9} | set_operation |
| 94 | Base Conversion | Convert 44639 from base 10 to base 6. | 542355 | base_conversion |
| 95 | Curved surface area of a cylinder | What is the curved surface area of a cylinder of radius, 46 and height, 69? | CSA of cylinder = 19942.83 | curved_surface_area_cylinder |
| 96 | Perimeter of Polygons | The perimeter of a 12 sided polygon with lengths of [18, 4, 59, 94, 107, 115, 42, 99, 16, 73, 2, 51]cm is: | 680 | perimeter_of_polygons |
| 97 | Power of Powers | The 14^10^5 = 14^(10*5) = 14^50 | 2024891623976437135118764865774783290467102632746078437376 | power_of_powers |
| 98 | Quotient of Powers with Same Base | The Quotient of 36^8 and 36^10 = 36^(8-10) = 36^-2 | 0.0007716049382716049 | quotient_of_power_same_base |
| 99 | Quotient of Powers with Same Power | The Quotient of 2^8 and 45^8 = (2/45)^8 = 0.044444444444444446^8 | 1.5224388403474453e-11 | quotient_of_power_same_power |
| 100 | complex Quadratic Equation | Find the roots of given Quadratic Equation 4x^2 + 5x + 1 = 0 | simplified solution : ((-0.25, -1.0)), generalized solution : ((-5 + 3)/2*4, (-5 - 3)/2*4) | complex_quadratic |
| 101 | Leap Year or Not | Year 2018 | is not a leap year | is_leap_year |
| 102 | Minute to Hour conversion | Convert 381 minutes to Hours & Minutes | 6 hours and 21 minutes | minutes_to_hours |
| 103 | Decimal to Binary Coded Decimal | BCD of Decimal Number 6496 is = | 1960 | decimal_to_bcd |
| 104 | Circumference | Circumference of circle with radius 68 | 427.2566008882119 | circumference |
| 105 | Combine Like terms | 9x^4 + 3x^2 + 5x^3 + 5x^1 + 10x^2 | 5x^1 + 13x^2 + 5x^3 + 9x^4 | combine_like_terms |
| 106 | signum function | signum of -831 is = | -1 | signum_function |
| 107 | Conditional Probability | Someone tested positive for a nasty disease which only 1.48% of population have. Test sensitivity (true positive) is equal to SN= 93.80% whereas test specificity (true negative) SP= 90.92%. What is the probability that this guy really has that disease? | 13.43% | conditional_probability |
| 108 | Arc length of Angle | Given radius, 32 and angle, 122. Find the arc length of the angle. | Arc length of the angle = 68.13765 | arc_length |
| 109 | Binomial distribution | A manufacturer of metal pistons finds that, on average, 35.48% of the pistons they manufacture are rejected because they are incorrectly sized. What is the probability that a batch of 11 pistons will contain no more than 4 rejected pistons? | 65.57 | binomial_distribution |
| 110 | Stationary Points | f(x)=2*x^2 + 9*x + 7 | (-9/4,-25/8) | stationary_points |
| 111 | Expanding Factored Binomial | (3x-3)(-1x+2) | -3*x^2+9*x-6 | expanding |
| 112 | Area of Circle | Area of circle with radius 93 | 27182.571428571428 | area_of_circle |