I have started learning python and I am stuck in this code
num=int(input("Enter the number"))
for i in range(2, num):
if num%i==0:
print("Not a prime number")
break
print("Prime Number")
When I enter the number which are not prime, then I am getting output as not a prime number but when I am entering the number that is prime I am getting the output as
Prime number
Prime number
Prime number
Prime number
Prime number
You should only print it once, for example like this:
num = int(input("Enter the number"))
for i in range(2, num):
if num % i == 0:
print("Not a prime number")
break
else:
print("Prime Number")
The loop should check for all numbers and only then print not prime for example like this.
num=int(input("Enter the number"))
for i in range(2, num):
if num%i == 0:
print("Not a prime number")
break
if i > num/2:
print("Prime Number")
break
I would suggest you debug by including print
statements that would help a beginner.
check this out:
num=int(input("Enter the number"))
for i in range(2, num//2):
if (num % i) == 0:
print(num, "is not a prime number")
break
else:
print(num, "is a prime number")`
The last statement should be managed carefully in this code. Due to this it print in loop and take care of the tabs you shift.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.