I have a problem with this python37 code during printing and I would like it not to print out beyond the 3rd print statement of the loop. The program is super fast for a factorization program if I can only have a number (print_factors(f)) to print just below the 4th output when needed.
For example 3 prints like this:
The factors of 3 are: 1, 3
If I input 2047 it prints like this:
The factors of 2047 are: 1, 23, 89, 2047
However I would just like it to show up to 89. Here is the code:
You can get some points if you answer this at stackexchange:
https://stackoverflow.com/questions/5922...-3rd-outpu
For example 3 prints like this:
The factors of 3 are: 1, 3
If I input 2047 it prints like this:
The factors of 2047 are: 1, 23, 89, 2047
However I would just like it to show up to 89. Here is the code:
You can get some points if you answer this at stackexchange:
https://stackoverflow.com/questions/5922...-3rd-outpu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
import math while True : def print_factors(x): print ( "The factors of" ,x, "are:" ) for i in range ( 1 ,x + 1 ): if x % i = = 0 : print (i) p = int ( input ( 'Enter a prime number and if the output is 1 and itself its prime: ' )) k = ((p * * 2 * 2 )) l = ((( pow ( 2 , k + 1 , 2 * k) - 1 ) % ( 2 * k))) f = (k / / 2 / / p) print_factors(f) |