Quantcast

Got Homework?

Connect with other students for help. It's a free community.

  • across
    MIT Grad Student
    Online now
  • laura*
    Helped 1,000 students
    Online now
  • Hero
    College Math Guru
    Online now

Here's the question you clicked on:

55 members online
  • 0 replying
  • 0 viewing

jessejayne Group Title

If I want to write a program that checks if a % list of numbers == 0 how would I write the list of numbers? Would I use a tuple, string, or ?

  • one year ago
  • one year ago

  • This Question is Closed
  1. RoamingBlue Group Title
    Best Response
    You've already chosen the best response.
    Medals 1

    Typically, you wouldn't use a string to hold a bunch of numbers. First, you need to decide if the list of numbers is mutable or not (mutable = changeable). If it IS mutable (you need to be able to add, remove or change values) use a list. If it isn't mutable ... use a tuple. pseudocode for this (please note that I didn't actually test this as valid code, just trying to give an overview of the concept) numberTuple = (1, 2, 3, 4, 5, 6) for (individualNumber) in numberTuple: if individulaNumber == 0: print "this number equals zero"

    • one year ago
  2. pedja Group Title
    Best Response
    You've already chosen the best response.
    Medals 0

    If I understand you well, you want to check if some number a is divisible by numbers in the list? It will be: for numer in number_list: if a % number == 0: print a, 'is divisible by', number Or, to check if a is divisible by every number in the list: def is_divisible(a, number_list): # function returns True if number a is divisible by every number in the list # else returns false for number in number_list: if a % number != 0: return False return True

    • one year ago
  3. RoamingBlue Group Title
    Best Response
    You've already chosen the best response.
    Medals 1

    Ah yes, pedja is correct ... I totally missed that a was a variable and just read it as the English word "a" and figured the % was a typo, silly me. You'd want to store the numbers in a list or tuple, then do exactly what pedja said and run a for loop over the list, checking each of the values in the list in turn

    • one year ago
  4. jessejayne Group Title
    Best Response
    You've already chosen the best response.
    Medals 0

    hmmmm... well I think I don't understand the syntax. Here is my program: http://dpaste.com/hold/785854/ I know that there is a better way to do this with way more fancy math and the program that I am trying to write will be slow, ect. However at this point I find it is better for me to learn the syntax using my own thoughts and ideas, rather than math that is complex. Once I can actually write something that doesn't take me hours to do then I will come back and complete the psets with different and more complex ideas. "steps off soap box* :P When I run this program it is not dividing the guess by every number in the number_list and print a result "composite number: " , guess. Rather it is taking the guess and dividing it by an integer in what seams to be a range (1, ?,1).

    • one year ago
  5. RoamingBlue Group Title
    Best Response
    You've already chosen the best response.
    Medals 1

    Consider how you're defining a composite number ... At line 8: if guess % number == 0: print 'composite number: ', guess Which translates to -- If the remainder of guess divided by number equals zero, this is a composite number. Which simply isn't true ... case in point (3). The remainder of three divided by three is zero so it passes the if clause on line 8 and is declared a composite number erroneously (it's prime not composite). Consider also the number 6 ... the remainder of six divided by six is also zero, yet this is a composite number. Consider testing instead to determine if it's a prime number.

    • one year ago
  6. RoamingBlue Group Title
    Best Response
    You've already chosen the best response.
    Medals 1

    Jesse - this is my take on how I'd handle the problem. http://dpaste.com/hold/785912/ Sorry if it got a bit mathy. I tried to comment the livin heck out of it to explain why I made the decisions I did.

    • one year ago
  7. jessejayne Group Title
    Best Response
    You've already chosen the best response.
    Medals 0

    I like the way that you did it. I understand it perfectly. I am still trying to make my program work unfortunately. This is where I am at this time: http://dpaste.com/hold/785944/ I did a prt scr of what I am getting to show you the problem, I just don't know how to fix it. It is the same as before. When I run this program it is not dividing the guess by every number in the number_list and print a result "composite number: " , guess. Rather it is taking the guess and dividing it by an integer in what seams to be a range (1, ?,1).

    • one year ago
    1 Attachment
  8. RoamingBlue Group Title
    Best Response
    You've already chosen the best response.
    Medals 1

    Line nine ... if guess == number If that line is true then you know for a fact that it's a prime because it's in your explicit list of prime numbers and you're done checking that number You don't need the if/else after that. You just need to pick out the primes based on whether they're in your list, print them when you find them, consider everything else composite I think this might be what you're going for -- http://dpaste.com/hold/785952/

    • one year ago
  9. jessejayne Group Title
    Best Response
    You've already chosen the best response.
    Medals 0

    Oh my, I look like a major dum dum. lol I think I honestly stared at it so long my thoughts were turning to mush. And now that I am able to see the last post it shows how silly the original thought was. I still wonder why it was running through every integer rather than the list, but I'm just going to let that go for now. Again, you rock! Much love!

    • one year ago
  10. RoamingBlue Group Title
    Best Response
    You've already chosen the best response.
    Medals 1

    *grins* not dumb at all. We all have moments of staring at something so long our eyes cross and we just stop seeing it. Were I to make a guess, I'd venture that it was running through every integer because you used "pass" on line 12 instead of "break" which would break you out once you found a prime. So it would find the actual prime in the first if, then for non-primes drop into the else (which potentially reports false primes 'cause the prime check down in the else can't possibly find a prime 'cause they were all found in the initial if)

    • one year ago
  11. bwCA Group Title
    Best Response
    You've already chosen the best response.
    Medals 0

    http://dpaste.com/786135/

    • one year ago
    • Attachments:

See more questions >>>

Your question is ready. Sign up for free to start getting answers.

spraguer (Moderator)
5 → View Detailed Profile

is replying to Can someone tell me what button the professor is hitting...

23

  • Teamwork 19 Teammate
  • Problem Solving 19 Hero
  • You have blocked this person.
  • ✔ You're a fan Checking fan status...

Thanks for being so helpful in mathematics. If you are getting quality help, make sure you spread the word about OpenStudy.

This is the testimonial you wrote.
You haven't written a testimonial for Owlfred.