我有代码检查数字是否为素数或注释
此代码中的问题:
当我运行它时给出我的错误:
看一下代码:
a = int (input("your numbre :"))
b = range(1,a+1)
if a%b == 0:
for i in b :
if b == a or b == 1:
print("the numbre you input is prim number")
else:
print("the nmubre you input is note prem numbre")
看一下错误:
Traceback (most recent call last):
File "C:\Users\admin\Desktop\chap8ex2.py", line 3, in <module>
if a%b == 0:
TypeError: unsupported operand type(s) for %: 'int' and 'range'
答案 0 :(得分:1)
range函数在其参数之间创建一个数字数组。 例如:
>>> range(1, 4)
=> [1, 2, 3]
在您的代码中,您要说a%b
找到用户输入的数字和范围对象之间的余数。将范围对象视为python列表。所以你正在做的是5%[1,2,3],这是没有意义的。检查这个单独的线程,以了解如何在python中实现素数检查器。 Python Prime number checker
答案 1 :(得分:0)
a = int (input("your numbre :"))
b = range(1,a+1)
for i in b :
if b == a or b == 1:
if a%b!=0:
print("the number you input is prim number")
else:
print("the number you input is not a prime number")