Ask your own question, for FREE!
MIT 6.00 Intro Computer Science (OCW) 47 Online
OpenStudy (anonymous):

Below is my code for finding the 1000th prime number. PS1 part 1. primeCounter=0 #keeps track of the number of primes oddNum=1 #Odd Number beginning 1 var=0 arrayOddNum=[] while(primeCounter!=999): oddNum=oddNum+2 arrayOddNum=[oddNum] length=len(arrayOddNum) for index in arrayOddNum: var=var+1 temp=0 while(temp!=var): for i in range(len(arrayOddNum)): if(oddNum%arrayOddNum(1)!=0): print oddNum temp=temp+1 primeCounter=primeCounter+1

OpenStudy (anonymous):

I think that 'for i in arrayOddNum' will suffice - in my (limited) experience working with python the 'for thing in otherthing' will take each element and work through it - if it's a multi-line document 'thing' will be an individual line, in a list 'thing' will be an item from the array, and in a dictionary it will be an individual tuple. Hope that helps a bit - I haven't actually ran the code to test it out for sure.

OpenStudy (anonymous):

Why did you assign this: length=len(arrayOddNum)? You never called it. Also, comments would help us see what you are thinking (which I learned from an uncommented post of my own).

OpenStudy (anonymous):

First, I must apologise if I misread your code, I'm new to this. while(primeCounter!=999): ... arrayOddNum=[oddNum] ... Wouldn't this actually reassign your list for every loop? If that is the case why use a list? If you're trying to add an element, use the append method. In terms of your algorithm, that is as far as I can think, it could work, except that you skipped 2 which is a prime by itself. Finally, a nitpick. Wouldn't it be inefficient if you divide the current number by all the odd number that came before it? Why not just store the prime numbers you have gathered so far and use that instead; all other odd numbers could be expressed in terms of prime(I think).

OpenStudy (anonymous):

use dpaste.com or a similar code pasting site to post your code pls

OpenStudy (anonymous):

Array notation uses brackets [] rather than parenthesis in line 15: if(oddNum%arrayOddNum(1)!=0): ...also there, you want to use an index variable (i) instead of the hardcoded 1 In your while(temp!=var) loop, you only increment temp if you get an even divide. Otherwise, temp doesn't get incremented and you loop forever. I always try to increment my loop sentinel as the last statement in the loop just to remind myself and to keep it out of any conditional branches. As GoonDu mentioned, you will probably want to hardcode the number 2 as your first prime and use the append method for extending an existing array like so: arrayOddNum.append(oddNum) The length and index variables aren't referenced, so you can clean out those assignments. You'll want to revisit your logic and carefully walk through your program. The steps outlined in the assignment are an excellent basis for your own program logic. Note that a prime is only a prime if it is not evenly divisible by any of the primes less than it, so you will have to check all of them and not just one. I hope this helps.

Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!
Latest Questions
whiteybulger: Should I drop this song i made last night in the studio
17 hours ago 50 Replies 0 Medals
Stewart: How do you know which tribe belongs to which reservation?
22 hours ago 2 Replies 0 Medals
randogirl123: me as hello kitty!! Still needs improvements, let me know what you thinkk
19 hours ago 32 Replies 2 Medals
Breathless: What is vaka blast made out of?
1 day ago 3 Replies 0 Medals
EdwinJsHispanic: another singing vid but for the people who knows spanish
1 day ago 16 Replies 1 Medal
EdwinJsHispanic: another singing vid, please give me your thoughts on it
1 day ago 20 Replies 2 Medals
SwaggyMark: Need help on process of annuity problem
3 days ago 3 Replies 0 Medals
Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!