Hi guys,
I initially wrote this code in Spyder (Python 3.6) but was having trouble
since it was giving me the wrong result. I decided to test it on some other
IDEs so I copied and pasted the code into a couple of online IDEs and it
gave me a different result. I have not been able to figure out why Spyder
gives me a different output.
Here's the code:
import numpy as np
def main():
num1 = str(
7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450
)
digitCount = 13
temp = []
largestProduct = 0
currentProduct = 1
for i in range(len(num1) - (digitCount)):
for j in range(digitCount):
temp.append(int(num1[i + j]))
currentProduct = np.product(temp)
if currentProduct > largestProduct:
largestProduct = currentProduct
largestArray = list(temp)
del temp[:]
print('Largest product array: %r' % largestArray)
print('Largest product: %r' % largestProduct)
main()
*In Spyder the output is:*
Largest product array: [9, 7, 8, 1, 7, 9, 7, 7, 8, 4, 6, 1, 7]
Largest product: 2091059712
*But for online IDEs (this is from repl.it) the output is:*
Largest product array: [5, 5, 7, 6, 6, 8, 9, 6, 6, 4, 8, 9, 5]
Largest product: 23514624000
The correct answer is the output given by the online IDE. So I am confused to
why Spyder is giving me the wrong result when the code is
exactly the same (since I just copied and pasted it). From my analysis, it
seems that when the code is executed on Spyder, the loop doesn't
iterate through all the digits in the number but stops around half way.
I've tested the code it other IDEs and it seems Spyder is the only one giving
me this result.
Any help would be greatly appreciated.
Thank you
Bobby
--
You received this message because you are subscribed to the Google Groups
"spyder" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/spyderlib.
For more options, visit https://groups.google.com/d/optout.