Is_prime: problem with "Your function fails on is_prime(9)"


#1

https://www.codecademy.com/en/courses/python-intermediate-en-rCQKw/0/6?curriculum_id=4f89dab3d788890003000096

Hi,guys!
I was stuck on this exercise. The error message is :

"Oops, try again. Your function fails on is_prime(9). It returns True when it should return False."

Here is my code below. I am really confused about why it goes wrong when x = 9

Thanks for your advice:slight_smile:


def is_prime(x):
    if x < 2:
        return False
    elif x == 2:
        return True
    else:
        for n in range(2, x):
            if x % n == 0:
                return False
            else:
                return True


#2

a function ends the moment a return keyword is reached, in your case this happens in the first run of the loop.

You want to change the indent of else/return True, since you only want to return True after the loop has finished running


6/15 is_prime : Working Fine. But not for 9 as a Prime Number
#3

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.