anonymous
  • anonymous
6.00 PS1 - 1000th prime number Please take a look at my code. It's returning an infinite loop, and I don't understand why. http://ideone.com/0G6S9j I'm fairly confident that my range() function isn't doing what I want it to do. What I want is for lines 4-7 to run for ALL values within the range stated in line 4, before moving on to line 8 if they all return a False to 5. Also, sometimes my while function doesn't work properly, and I get runs that go way past primesLeft being negative. What's going on with that?
MIT 6.00 Intro Computer Science (OCW)
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.

Get our expert's

answer on brainly

SEE EXPERT ANSWER

Get your free account and access expert answers to this
and thousands of other questions.

anonymous
  • anonymous
6.00 PS1 - 1000th prime number Please take a look at my code. It's returning an infinite loop, and I don't understand why. http://ideone.com/0G6S9j I'm fairly confident that my range() function isn't doing what I want it to do. What I want is for lines 4-7 to run for ALL values within the range stated in line 4, before moving on to line 8 if they all return a False to 5. Also, sometimes my while function doesn't work properly, and I get runs that go way past primesLeft being negative. What's going on with that?
MIT 6.00 Intro Computer Science (OCW)
jamiebookeater
  • jamiebookeater
I got my questions answered at brainly.com in under 10 minutes. Go to brainly.com now for free help!
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.

Get this expert

answer on brainly

SEE EXPERT ANSWER

Get your free account and access expert answers to this
and thousands of other questions

rsmith6559
  • rsmith6559
Your if/else statement shouldn't be inside your for loop. The for loop is determining primeness, and the if/else is printing the result of that and modifying trialnum too. Little trick: all non-prime numbers eventually factor to prime numbers.
anonymous
  • anonymous
Yeah, I considered a way to simplify my range as a list that keeps adding values for prime numbers as I find them. The issue is that I don't know much about lists yet, so I didn't want to use a method that would involve too much nuance or looking stuff up before it's taught in the lecture. I figured my method would get the same result, as well as match the assignment's hints more closely. I'm confused by your advice because when I make the change you suggest and dedent my if/else, I get an expected indent error (http://ideone.com/xCE9xB). I also don't understand what you mean in terms of why the if/else shouldn't be part of the for. It seems my if/else is entirely contingent on the range set up by my for statement, as the if and the else both make use of the variable I set in the for. What is actually happening that's causing this infinite loop?
osanseviero
  • osanseviero
About the indent error: When you use python, you need to indent at the correct places. A for will repeat a block of code, and you have a if/else which I can guess that should be inside the for. So there should be indentation

Looking for something else?

Not the answer you are looking for? Search for more explanations.

More answers

osanseviero
  • osanseviero
That won't fix all the problem, but you're really close.
osanseviero
  • osanseviero
Run the code and you'll see a LOT of text, but you will have a better idea of what is going on
anonymous
  • anonymous
I'm sorry if I'm being unclear. I need to understand WHY I get an infinite loop. It's nice to know that I was right about my indents, but I don't understand what that has to do with my getting an infinite loop. Per these comments, I dedented my if/else., then redented them. Now my code looks exactly the same as my initial code in this thread, which yields an infinite loop. I need to know what I'm doing wrong.
anonymous
  • anonymous
I have resolved the issue. For those looking for the solution to this problem set, I encourage you to look into using booleans to verify whether or not the condition "every item in the range returns a remainder" is met.
osanseviero
  • osanseviero
Great!

Looking for something else?

Not the answer you are looking for? Search for more explanations.