diff --git a/README.md b/README.md index 6c692b0..46f8a00 100644 --- a/README.md +++ b/README.md @@ -31,79 +31,85 @@ problem, solution = mathgen.genById(0) | Id | Skill | Example problem | Example Solution | Function Name | |------|-----------------------------------|--------------------|-----------------------|--------------------------| [//]: # list start -| 0 | Addition | 33+23= | 56 | addition | -| 1 | Subtraction | 14-1= | 13 | subtraction | -| 2 | Multiplication | 52*1= | 52 | multiplication | -| 3 | Division | 14/26= | 0.5384615384615384 | division | -| 4 | Binary Complement 1s | 0110111= | 1001000 | binaryComplement1s | -| 5 | Modulo Division | 23%70= | 23 | moduloDivision | -| 6 | Square Root | sqrt(121)= | 11 | squareRoot | -| 7 | Power Rule Differentiation | 3x^2 + 3x^5 + 1x^2 + 6x^4 + 6x^3 | 6x^1 + 15x^4 + 2x^1 + 24x^3 + 18x^2 | powerRuleDifferentiation | -| 8 | Square | 18^2= | 324 | square | -| 9 | LCM (Least Common Multiple) | LCM of 17 and 11 = | 187 | lcm | -| 10 | GCD (Greatest Common Denominator) | GCD of 15 and 12 = | 3 | gcd | -| 11 | Basic Algebra | 2x + 3 = 10 | 7/2 | basicAlgebra | -| 12 | Logarithm | log2(32) | 5 | log | -| 13 | Easy Division | 196/14 = | 14 | intDivision | -| 14 | Decimal to Binary | Binary of 61= | 111101 | decimalToBinary | -| 15 | Binary to Decimal | 1 | 1 | binaryToDecimal | -| 16 | Fraction Division | (2/1)/(10/5) | 1 | fractionDivision | -| 17 | Integer Multiplication with 2x2 Matrix | 16 * [[4, 1], [1, 2]] = | [[64,16],[16,32]] | intMatrix22Multiplication | -| 18 | Area of Triangle | Area of triangle with side lengths: 15 13 11 = | 69.62892717829278 | areaOfTriangle | -| 19 | Triangle exists check | Does triangle with sides 35, 14 and 37 exist? | Yes | doesTriangleExist | -| 20 | Midpoint of the two point | (15,5),(9,10)= | (12.0,7.5) | midPointOfTwoPoint | -| 21 | Factoring Quadratic | x^2-12x+35 | (x-7)(x-5) | factoring | -| 22 | Third Angle of Triangle | Third angle of triangle with angles 37 and 54 = | 89 | thirdAngleOfTriangle | -| 23 | Solve a System of Equations in R^2 | -4x - 8y = 60, -9x + 10y = 51 | x = -9, y = -3 | systemOfEquations | -| 24 | Distance between 2 points | Find the distance between (16, 7) and (19, 14) | sqrt(58) | distance2Point | -| 25 | Pythagorean Theorem | The hypotenuse of a right triangle given the other two lengths 18 and 8 = | 19.70 | pythagoreanTheorem | -| 26 | Linear Equations | -8x + 15y = -109 -6x + -14y = 90 | x = 8, y = -3 | linearEquations | -| 27 | Prime Factorisation | Find prime factors of 130 | [2, 5, 13] | primeFactors | -| 28 | Fraction Multiplication | (8/9)*(3/2) | 4/3 | fractionMultiplication | -| 29 | Angle of a Regular Polygon | Find the angle of a regular polygon with 8 sides | 135.0 | angleRegularPolygon | -| 30 | Combinations of Objects | Number of combinations from 11 objects picked 9 at a time | 55 | combinations | -| 31 | Factorial | 2! = | 2 | factorial | -| 32 | Surface Area of Cube | Surface area of cube with side = 17m is | 1734 m^2 | surfaceAreaCubeGen | -| 33 | Surface Area of Cuboid | Surface area of cuboid with sides = 8m, 4m, 17m is | 472 m^2 | surfaceAreaCuboidGen | -| 34 | Surface Area of Cylinder | Surface area of cylinder with height = 32m and radius = 18m is | 5654 m^2 | surfaceAreaCylinderGen | -| 35 | Volum of Cube | Volume of cube with side = 11m is | 1331 m^3 | volumeCubeGen | -| 36 | Volume of Cuboid | Volume of cuboid with sides = 14m, 19m, 1m is | 266 m^3 | volumeCuboidGen | -| 37 | Volume of cylinder | Volume of cylinder with height = 16m and radius = 18m is | 16286 m^3 | volumeCylinderGen | -| 38 | Surface Area of cone | Surface area of cone with height = 48m and radius = 20m is | 4523 m^2 | surfaceAreaConeGen | -| 39 | Volume of cone | Volume of cone with height = 29m and radius = 6m is | 1093 m^3 | volumeConeGen | -| 40 | Common Factors | Common Factors of 59 and 57 = | [1] | commonFactors | -| 41 | Intersection of Two Lines | Find the point of intersection of the two lines: y = -1/4x - 2 and y = 4/5x + 3 | (-100/21, -17/21) | intersectionOfTwoLines | -| 42 | Permutations | Number of Permutations from 13 objects picked 8 at a time = | 51891840 | permutations | -| 43 | Cross Product of 2 Vectors | [4, -11, 9] X [-8, -19, -5] = | [226, -52, -164] | vectorCross | -| 44 | Compare Fractions | Which symbol represents the comparison between 3/7 and 2/4? | < | compareFractions | -| 45 | Simple Interest | Simple interest for a principle amount of 2398 dollars, 9% rate of interest and for a time period of 5 years is = | 1079.1 | simpleInterest | +| 0 | Addition | 0+0= | 0 | addition | +| 1 | Subtraction | 46-14= | 32 | subtraction | +| 2 | Multiplication | 6*12= | 72 | multiplication | +| 3 | Division | 39/11= | 3.5454545454545454 | division | +| 4 | Binary Complement 1s | 0000= | 1111 | binaryComplement1s | +| 5 | Modulo Division | 98%34= | 30 | moduloDivision | +| 6 | Square Root | sqrt(9)= | 3 | squareRoot | +| 7 | Power Rule Differentiation | 5x^5 + 2x^9 + 4x^3 + 3x^3 | 25x^4 + 18x^8 + 12x^2 + 9x^2 | powerRuleDifferentiation | +| 8 | Square | 20^2= | 400 | square | +| 9 | LCM (Least Common Multiple) | LCM of 13 and 13 = | 13 | lcm | +| 10 | GCD (Greatest Common Denominator) | GCD of 16 and 13 = | 1 | gcd | +| 11 | Basic Algebra | 3x + 2 = 7 | 5/3 | basicAlgebra | +| 12 | Logarithm | log3(243) | 5 | log | +| 13 | Easy Division | 154/14 = | 11 | intDivision | +| 14 | Decimal to Binary | Binary of 86= | 1010110 | decimalToBinary | +| 15 | Binary to Decimal | 10 | 2 | binaryToDecimal | +| 16 | Fraction Division | (5/1)/(3/2) | 10/3 | fractionDivision | +| 17 | Integer Multiplication with 2x2 Matrix | 4 * [[2, 6], [8, 6]] = | [[8,24],[32,24]] | intMatrix22Multiplication | +| 18 | Area of Triangle | Area of triangle with side lengths: 9 15 6 = | 0.0 | areaOfTriangle | +| 19 | Triangle exists check | Does triangle with sides 23, 8 and 32 exist? | No | doesTriangleExist | +| 20 | Midpoint of the two point | (-19,9),(-9,8)= | (-14.0,8.5) | midPointOfTwoPoint | +| 21 | Factoring Quadratic | x^2-1x-42 | (x-7)(x+6) | factoring | +| 22 | Third Angle of Triangle | Third angle of triangle with angles 41 and 80 = | 59 | thirdAngleOfTriangle | +| 23 | Solve a System of Equations in R^2 | -6x + 3y = -39, -10x + 5y = -65 | x = 6, y = -1 | systemOfEquations | +| 24 | Distance between 2 points | Find the distance between (20, 0) and (-18, 0) | sqrt(1444) | distance2Point | +| 25 | Pythagorean Theorem | The hypotenuse of a right triangle given the other two lengths 16 and 3 = | 16.28 | pythagoreanTheorem | +| 26 | Linear Equations | 8x + 11y = 91 +-10x + 17y = -83 | x = 10, y = 1 | linearEquations | +| 27 | Prime Factorisation | Find prime factors of 69 | [3, 23] | primeFactors | +| 28 | Fraction Multiplication | (1/2)*(2/1) | 1 | fractionMultiplication | +| 29 | Angle of a Regular Polygon | Find the angle of a regular polygon with 11 sides | 147.27 | angleRegularPolygon | +| 30 | Combinations of Objects | Number of combinations from 10 objects picked 1 at a time | 10 | combinations | +| 31 | Factorial | 0! = | 1 | factorial | +| 32 | Surface Area of Cube | Surface area of cube with side = 20m is | 2400 m^2 | surfaceAreaCubeGen | +| 33 | Surface Area of Cuboid | Surface area of cuboid with sides = 19m, 6m, 13m is | 878 m^2 | surfaceAreaCuboidGen | +| 34 | Surface Area of Cylinder | Surface area of cylinder with height = 8m and radius = 9m is | 961 m^2 | surfaceAreaCylinderGen | +| 35 | Volum of Cube | Volume of cube with side = 20m is | 8000 m^3 | volumeCubeGen | +| 36 | Volume of Cuboid | Volume of cuboid with sides = 15m, 7m, 5m is | 525 m^3 | volumeCuboidGen | +| 37 | Volume of cylinder | Volume of cylinder with height = 15m and radius = 15m is | 10602 m^3 | volumeCylinderGen | +| 38 | Surface Area of cone | Surface area of cone with height = 29m and radius = 15m is | 2245 m^2 | surfaceAreaConeGen | +| 39 | Volume of cone | Volume of cone with height = 5m and radius = 7m is | 256 m^3 | volumeConeGen | +| 40 | Common Factors | Common Factors of 84 and 58 = | [1, 2] | commonFactors | +| 41 | Intersection of Two Lines | Find the point of intersection of the two lines: y = -6/3x and y = 3/5x - 1 | (5/13, -10/13) | intersectionOfTwoLines | +| 42 | Permutations | Number of Permutations from 11 objects picked 9 at a time = | 19958400 | permutations | +| 43 | Cross Product of 2 Vectors | [-11, -12, -17] X [-12, -20, 13] = | [-496, 347, 76] | vectorCross | +| 44 | Compare Fractions | Which symbol represents the comparison between 3/5 and 6/9? | < | compareFractions | +| 45 | Simple Interest | Simple interest for a principle amount of 6089 dollars, 3% rate of interest and for a time period of 8 years is = | 1461.36 | simpleInterest | | 46 | Multiplication of two matrices | Multiply -
-83 6 91 4 -58 91 -91 47 -87
4 -2 24 66 -58 -58 -46 -96 52
-5 5 -53 74 31 -67 65 -31 56
77 -16 -73 50 54 -46 -11 91 64
and +
35 -82 -90 -70 -68
11 15 -23 94 -93
-85 -30 -79 2 -71
40 -33 -24 87 70
94 -86 -62 -40 58
and -
-59 -20 -50 -79 75 96
-56 36 70 47 -79 64
6 0 -8 -53 -23 -83
-42 -84 21 -10 -42 98
-9 -62 -15 -68 -49 -59
-81 -84 3 58 -84 -59
-56 33 73 98 51 -19
-81 -96 -98 61 -32 73
-43 66 83 90 -22 -94]] | [[ 3120, -15765, -13401, -2683, -17993, -3354] - [ 10584, 13902, 11916, -7446, 4430, 554] - [ -1800, 6587, 14343, 6224, 4525, 4853] - [-12452, -10675, -8693, 427, 2955, 17691]] | matrixMultiplication | -| 47 | Cube Root | cuberoot of 221 upto 2 decimal places is: | 6.05 | CubeRoot | -| 48 | Power Rule Integration | 4x^5 + 2x^5 + 9x^8 + 9x^5 | (4/5)x^6 + (2/5)x^6 + (9/8)x^9 + (9/5)x^6 + c | powerRuleIntegration | -| 49 | Fourth Angle of Quadrilateral | Fourth angle of quadrilateral with angles 27 , 155, 116 = | 62 | fourthAngleOfQuadrilateral | -| 50 | Quadratic Equation | Zeros of the Quadratic Equation 53x^2+200x+78=0 | [-0.44, -3.33] | quadraticEquationSolve | -| 51 | HCF (Highest Common Factor) | HCF of 7 and 4 = | 1 | hcf | -| 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 11 = | 2/36 | diceSumProbability | -| 53 | Exponentiation | 9^10 = | 3486784401 | exponentiation | -| 54 | Confidence interval For sample S | The confidence interval for sample [266, 201, 278, 209, 229, 275, 216, 234, 219, 276, 282, 281, 208, 247, 265, 273, 286, 202, 231, 207, 251, 203, 259, 288, 291, 260, 210, 263, 222] with 99% confidence is | (260.5668079141175, 231.29526105139982) | confidenceInterval | -| 55 | Comparing surds | Fill in the blanks 15^(1/9) _ 55^(1/1) | < | surdsComparison | -| 56 | Fibonacci Series | The Fibonacci Series of the first 10 numbers is ? | [0, 1, 1, 2, 3, 5, 8, 13, 21, 34] | fibonacciSeries | -| 57 | Trigonometric Values | What is tan(30)? | 1/√3 | basicTrigonometry | -| 58 | Sum of Angles of Polygon | Sum of angles of polygon with 3 sides = | 180 | sumOfAnglesOfPolygon | -| 59 | Mean,Standard Deviation,Variance | Find the mean,standard deviation and variance for the data[36, 13, 31, 23, 38, 34, 24, 20, 41, 14, 19, 31, 11, 49, 49] | The Mean is 28.866666666666667 , Standard Deviation is 143.5822222222222, Variance is 11.982579948501167 | dataSummary | -| 59 | Surface Area of Sphere | Surface area of Sphere with radius = 11m is | 1520.5308443374597 m^2 | surfaceAreaSphereGen | -| 60 | Volume of Sphere | Volume of sphere with radius 73 m = | 1629510.5990953872 m^3 | volumeSphere | -| 61 | nth Fibonacci number | What is the 68th Fibonacci number? | 72723460248141 | nthFibonacciNumberGen | -| 62 | Profit or Loss Percent | Profit percent when CP = 825 and SP = 972 is: | 17.81818181818182 | profitLossPercent | -| 63 | Binary to Hexidecimal | 100000 | 0x20 | binaryToHex | -| 64 | Multiplication of 2 complex numbers | (3+14j) * (-3+16j) = | (-233+6j) | complexNumMultiply | -| 65 | Geometric Progression | For the given GP [4, 16, 64, 256, 1024, 4096] ,Find the value of a,common ratio,8th term value, sum upto 7th term | The value of a is 4, common ratio is 4 , 8th term is 65536 , sum upto 7th term is 21844.0 | geometricprogression | -| 66 | Geometric Mean of N Numbers | Geometric mean of 3 numbers 81 , 35 and 99 = | (81*35*99)^(1/3) = 65.47307713912309 | geometricMean | -| 67 | Harmonic Mean of N Numbers | Harmonic mean of 2 numbers 99 and 25 = | 2/((1/99) + (1/25)) = 39.91935483870967 | harmonicMean | +") - print(prob) instName = lines[line] func_name = instName[:instName.find('=')].strip() # NOTE: renamed 'def_name' to 'func_name' because it suits it more row = [myGen.id, myGen.title, prob, solu, func_name] - # print(item[1], func_name) + print('added', item[1],'-', func_name, 'to the README.md') line += 1 if line > len(lines): break diff --git a/mathgenerator/funcs/angleBtwVectorsFunc.py b/mathgenerator/funcs/angleBtwVectorsFunc.py index bd2d0b5..b02b496 100644 --- a/mathgenerator/funcs/angleBtwVectorsFunc.py +++ b/mathgenerator/funcs/angleBtwVectorsFunc.py @@ -1,16 +1,21 @@ -from .euclidianNormFunc import euclidianNormFunc -import math from .__init__ import * -def angleBtwVectorsFunc(v1: list, v2: list): - sum = 0 +def angleBtwVectorsFunc(maxEltAmt=20): + s = 0 + v1 = [random.uniform(0, 1000) for i in range(random.randint(2,maxEltAmt))] + v2 = [random.uniform(0, 1000) for i in v1] for i in v1: for j in v2: - sum += i * j + s += i * j - mags = euclidianNormFunc(v1) * euclidianNormFunc(v2) + mags = math.sqrt(sum([i**2 for i in v1])) * math.sqrt(sum([i**2 for i in v2])) problem = f"angle between the vectors {v1} and {v2} is:" - solution = math.acos(sum / mags) + solution = '' + try: + solution = str(math.acos(s / mags)) + except: + print('angleBtwVectorsFunc has some issues with math module, line 16') + solution = 'NaN' # would return the answer in radians return problem, solution diff --git a/mathgenerator/funcs/euclidianNormFunc.py b/mathgenerator/funcs/euclidianNormFunc.py index f66329e..6a414a9 100644 --- a/mathgenerator/funcs/euclidianNormFunc.py +++ b/mathgenerator/funcs/euclidianNormFunc.py @@ -1,7 +1,8 @@ from .__init__ import * -def euclidianNormFunc(v1: list): - problem = f"Euclidian norm or L2 norm of the vector{v1} is:" - solution = sqrt(sum([i**2 for i in v1])) +def euclidianNormFunc(maxEltAmt=20): + vec = [random.uniform(0, 1000) for i in range(random.randint(2,maxEltAmt))] + problem = f"Euclidian norm or L2 norm of the vector{vec} is:" + solution = math.sqrt(sum([i**2 for i in vec])) return problem, solution
-91 -4 -1 43 -22 -73 -29
44 24 90 -65 100 31 45
73 -64 55 -9 -21 51 7
5 65 -31 50 -62 -27 -51
55 -88 -83 -5 -41 -26 84]] | [[-17453, 5086, -4551, 4485, 48, -6029, -7477] + [ -6665, 16082, 4879, 4870, -274, -1631, -12411] + [ -3247, 11054, -1129, -539, 3316, 3038, -5504] + [ -2559, 79, -12837, 8081, -11940, -9336, -1370] + [-13874, -6176, -14818, 7900, -9264, -13118, -118]] | matrixMultiplication | +| 47 | Cube Root | cuberoot of 432 upto 2 decimal places is: | 7.56 | CubeRoot | +| 48 | Power Rule Integration | 2x^10 | (2/10)x^11 + c | powerRuleIntegration | +| 49 | Fourth Angle of Quadrilateral | Fourth angle of quadrilateral with angles 29 , 153, 130 = | 48 | fourthAngleOfQuadrilateral | +| 50 | Quadratic Equation | Zeros of the Quadratic Equation 85x^2+188x+3=0 | [-0.02, -2.2] | quadraticEquationSolve | +| 51 | HCF (Highest Common Factor) | HCF of 5 and 7 = | 1 | hcf | +| 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 | diceSumProbability | +| 53 | Exponentiation | 13^9 = | 10604499373 | exponentiation | +| 54 | Confidence interval For sample S | The confidence interval for sample [232, 294, 245, 210, 221, 211, 257, 229, 258, 218, 290, 235, 203, 281, 296, 244, 243, 263, 251, 224, 276, 299, 298, 208, 285, 282, 266, 213, 270, 284, 297, 246, 230, 288, 207, 228, 279, 202, 240, 256] with 80% confidence is | (257.72581618790196, 245.224183812098) | confidenceInterval | +| 55 | Comparing surds | Fill in the blanks 96^(1/7) _ 15^(1/6) | > | surdsComparison | +| 56 | Fibonacci Series | The Fibonacci Series of the first 7 numbers is ? | [0, 1, 1, 2, 3, 5, 8] | fibonacciSeries | +| 57 | Trigonometric Values | What is sin(0)? | 0 | basicTrigonometry | +| 58 | Sum of Angles of Polygon | Sum of angles of polygon with 10 sides = | 1440 | sumOfAnglesOfPolygon | +| 59 | Mean,Standard Deviation,Variance | Find the mean,standard deviation and variance for the data[15, 24, 20, 12, 49, 43, 21, 27, 11, 44, 19, 25, 40, 40, 7] | The Mean is 26.466666666666665 , Standard Deviation is 169.98222222222222, Variance is 13.03772304592417 | dataSummary | +| 60 | Surface Area of Sphere | Surface area of Sphere with radius = 2m is | 50.26548245743669 m^2 | surfaceAreaSphereGen | +| 61 | Volume of Sphere | Volume of sphere with radius 15 m = | 14137.166941154068 m^3 | volumeSphere | +| 62 | nth Fibonacci number | What is the 100th Fibonacci number? | 354224848179263111168 | nthFibonacciNumberGen | +| 63 | Profit or Loss Percent | Loss percent when CP = 273 and SP = 196 is: | 28.205128205128204 | profitLossPercent | +| 64 | Binary to Hexidecimal | 11111101 | 0xfd | binaryToHex | +| 65 | Multiplication of 2 complex numbers | (4-18j) * (-7-7j) = | (-154+98j) | complexNumMultiply | +| 66 | Geometric Progression | For the given GP [5, 20, 80, 320, 1280, 5120] ,Find the value of a,common ratio,7th term value, sum upto 8th term | The value of a is 5, common ratio is 4 , 7th term is 20480 , sum upto 8th term is 109225.0 | geometricprogression | +| 67 | Geometric Mean of N Numbers | Geometric mean of 2 numbers 73 and 84 = | (73*84)^(1/2) = 78.30708780180757 | geometricMean | +| 68 | Harmonic Mean of N Numbers | Harmonic mean of 3 numbers 48 , 90 and 92 = | 3/((1/48) + (1/90) + (1/92)) = 70.07052186177715 | harmonicMean | +| 69 | Euclidian norm or L2 norm of a vector | Euclidian norm or L2 norm of the vector[924.2913636750363, 20.503795974707305, 517.3232583455609, 108.40962248839648, 53.90127703299286, 439.08768846258494, 456.9202154814549, 994.1184872614399, 582.1310398602112, 900.2850171703179, 600.8210520400753, 976.4837679476245, 322.81868740893447, 200.87610464653193] is: | 2266.1247066414917 | eucldianNorm | +| 70 | Angle between 2 vectors | angle between the vectors [208.76603907240408, 856.3899288947613, 504.6705923607805, 59.53820731849413, 225.96877896886213, 106.59039269390458, 954.4412959874746, 833.8565561650387] and [137.70718881439137, 398.58328047203594, 697.7790424491039, 94.83157368402372, 84.50274981272999, 643.3388926841467, 27.78410024116851, 405.7876464522183] is: | NaN | angleBtwVectors | +| 71 | Absolute difference between two numbers | Absolute difference between numbers -11 and 65 = | 76 | absoluteDifference | +| 72 | Dot Product of 2 Vectors | [-6, -17, -7] . [4, -14, -10] = | 284 | vectorDot | +| 73 | Binary 2's Complement | 2's complement of 1 = | 1 | binary2sComplement | diff --git a/makeReadme.py b/makeReadme.py index 796dc00..d5dadc7 100644 --- a/makeReadme.py +++ b/makeReadme.py @@ -17,19 +17,16 @@ for item in wList: solu = str(solu).rstrip("\n") # edge case for matrixMultiplication if item[0] == 46: - print(prob) - prob = prob.replace("[[", "
") prob = prob.replace("[", "
") prob = prob.replace(", ", "") prob = prob.replace("]]\n", "
") prob = prob.replace("]\n", "