From 08b7c701d699ed80dda64eae92e2bd2a938d15ab Mon Sep 17 00:00:00 2001 From: - Date: Fri, 16 Oct 2020 16:11:45 +0200 Subject: [PATCH] Fixed error where the problem is adjusted in the algorithm --- mathgenerator/mathgen.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/mathgenerator/mathgen.py b/mathgenerator/mathgen.py index 5926ba3..0a92142 100644 --- a/mathgenerator/mathgen.py +++ b/mathgenerator/mathgen.py @@ -218,16 +218,17 @@ def multiplyIntToMatrix22(maxMatrixVal = 10, maxRes = 100): def primeFactors(minVal=10, maxVal=999): a = random.randint(minVal, maxVal) + n = a i = 2 factors = [] - while i*i <= a: - if a % i: + while i * i <= n: + if n % i: i += 1 else: - a //= i + n //= i factors.append(i) - if a > 1: - factors.append(a) + if n > 1: + factors.append(n) problem = f"Find prime factors of {a}" solution = f"{factors}" return problem, solution @@ -254,4 +255,7 @@ decimalToBinary = Generator("Decimal to Binary",14,"Binary of a=","b",DecimalToB binaryToDecimal = Generator("Binary to Decimal",15,"Decimal of a=","b",BinaryToDecimalFunc) fractionDivision = Generator("Fraction Division", 16, "(a/b)/(c/d)=", "x/y", divideFractionsFunc) intMatrix22Multiplication = Generator("Integer Multiplication with 2x2 Matrix", 17, "k * [[a,b],[c,d]]=", "[[k*a,k*b],[k*c,k*d]]", multiplyIntToMatrix22) -primeFactors = Generator("Prime Factorisation", 18, "Prime Factors of a =", "[b, c, d, ...]", primeFactors) \ No newline at end of file +primeFactors = Generator("Prime Factorisation", 18, "Prime Factors of a =", "[b, c, d, ...]", primeFactors) + +for i in range(0, 10): + print(primeFactors()) \ No newline at end of file