Exercise 12:
Recognition of Prime Numbers in Python
Write a program in Python which receives a natural number as input and determines whether it is a prime number or a composite number.
Code:
n = int(input("n = "))
if n<1:
print("Error: n has to be a natural number")
else:
counter = 0
for i in range(1, int(n**0.5+1)):
if n%i==0:
counter +=1
if counter == 1:
print(n, "is a prime number")
else:
print(n, "is a composite number")
Run:
================= RESTART: C:\Prime Numbers.py ================
n = 5
5 is a prime number
>>>
================= RESTART: C:\Prime Numbers.py ================
n = 97
97 is a prime number
>>>
================= RESTART: C:\Prime Numbers.py ================
n = 15
15 is a composite number
>>>
================= RESTART: C:\Prime Numbers.py ================
n = 1
1 is a prime number
>>>
Professional Version of the Program
Write a program in Python which continuously receives natural numbers as input and determines whether each one is a prime number or a composite number. If the input is less than 1, the program will be terminated.
Code:
print("To exit the program => n = exit \n")
while True:
n = input("n = ")
n = n.lower()
if n=="exit":
break
else:
try:
n = int(n)
if n<1:
print("Error: n has to be a natural number \n")
else:
counter = 0
for i in range(1, int(n**0.5+1)):
if n%i==0:
counter +=1
if counter == 1:
print(n, "is a prime number \n")
else:
print(n, "is a composite number \n")
except:
print("Error: n has to be a positive integer \n")
Run:
=========== RESTART: C:\Prime Number Recognition.py ===========
To exit the program => n = exit
n = 7
7 is a prime number
n = 13
13 is a prime number
n = 93
93 is a composite number
n = 113
113 is a prime number
n = -8
Error: n has to be a natural number
n = exit
>>>