首页 > 试题广场 >

素数判定

[编程题]素数判定
  • 热度指数:21171 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
给定一个数n,要求判断其是否为素数(0,1,负数都是非素数)。

输入描述:
测试数据有多组,每组输入一个数n。


输出描述:
对于每组输入,若是素数则输出yes,否则输入no。
示例1

输入

13

输出

yes
while True:
    try:
        num = int(input())
        count = 0
        if num > 4:
            for i in range(2,num):    #用num//2可以减少回圈次数
                if num % i == 0:
                    count += 1
                    if count == 1:
                        print('no')
                        break
            if count == 0:
                print('yes')
        elif num == 2&nbs***bsp;num == 3:
            print('yes')
        else:
            print('no')
    except:
        break

发表于 2020-05-15 22:24:07 回复(0)

while True:
    try:
        a=int(input())
        if a<2:
            print("no")
        else:
            isSu=True
            for i in range(2,a):
                if a%i==0:
                    print("no")
                    isSu=False
                    break
            if isSu:
                print("yes")
    except:
        break

python solution

发表于 2017-10-01 10:28:35 回复(3)
isPrime = lambda n:'yes' if not any([bool(n % i == 0) for i in xrange(2, int(n ** 0.5) + 1)]) else 'no'
try:
    while 1:
        n = input()
        print 'no' if n <= 1 else isPrime(n)
except:
    pass

发表于 2016-12-25 19:33:29 回复(0)

问题信息

难度:
3条回答 9957浏览

热门推荐

通过挑战的用户

查看代码
素数判定