w3resource

Python Exercise: Test the number is prime or not

Python Functions: Exercise-9 with Solution

Write a Python function that takes a number as a parameter and checks whether the number is prime or not.

Note : A prime number (or a prime) is a natural number greater than 1 and that has no positive divisors other than 1 and itself.

Prime Number

Prime number between 1 to 100:

Prime Number between 1 to 100

Sample Solution-1:

Python Code:

# Define a function named 'test_prime' that checks if a number 'n' is a prime number
def test_prime(n):
    # Check if 'n' is equal to 1
    if (n == 1):
        # If 'n' is 1, return False (1 is not a prime number)
        return False
    # Check if 'n' is equal to 2
    elif (n == 2):
        # If 'n' is 2, return True (2 is a prime number)
        return True
    else:
        # Iterate through numbers from 2 to (n-1) using 'x' as the iterator
        for x in range(2, n):
            # Check if 'n' is divisible by 'x' without any remainder
            if (n % x == 0):
                # If 'n' is divisible by 'x', return False (not a prime number)
                return False
        # If 'n' is not divisible by any number from 2 to (n-1), return True (prime number)
        return True

# Print the result of checking if 9 is a prime number by calling the 'test_prime' function
print(test_prime(9))

Sample Output:

False

Explanation:

In the exercise above the code defines a function named "test_prime()" that determines whether a given number 'n' is a prime number or not. It performs various checks such as excluding 1 as a prime number, including 2 as a prime number, and then checks the divisibility from 2 to 'n-1'. Finally, it demonstrates the function by calling it with the argument 9 and prints the result (False) indicating that 9 is not a prime number.

Flowchart:

Flowchart: Python exercises: Test the number is prime or not.

Sample Solution-2:

  • Return False if the number is 0, 1, a negative number or a multiple of 2.
  • Use all() and range() to check numbers from 3 to the square root of the given number.
  • Return True if none divides the given number, False otherwise.

Python Code:

# Import the 'sqrt' function from the 'math' module
from math import sqrt

# Define a function named 'is_prime' that checks if a number 'num' is a prime number
def is_prime(num):
    # Check conditions:
    # If 'num' is less than or equal to 1 or if 'num' is even and greater than 2, return False
    if num <= 1 or (num % 2 == 0 and num > 2): 
        return False
    
    # Check if 'num' is divisible by any odd number from 3 to the square root of 'num'
    # If any number from this range divides 'num' evenly, return False; otherwise, return True
    return all(num % i for i in range(3, int(sqrt(num)) + 1, 2))

# Print the result of checking whether certain numbers are prime by calling the 'is_prime' function
print(is_prime(11))
print(is_prime(13))
print(is_prime(16))
print(is_prime(17))
print(is_prime(97))

Sample Output:

True
True
False
True
True

Explanation:

In the exercise above the code defines a function named "is_prime()" that checks whether a given number 'num' is a prime number. It checks various conditions, such as excluding numbers less than or equal to 1, even numbers greater than 2, and then checks divisibility by odd numbers from 3 to the square root of 'num'. Finally, it calls the function with different numbers and prints the results indicating whether they are prime (True) or not (False).

Flowchart:

Flowchart: Python exercises: Test the number is prime or not.

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python function that takes a list and returns a new list with unique elements of the first list.
Next: Write a Python program to print the even numbers from a given list.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://198.211.115.131/python-exercises/python-functions-exercise-9.php