智一面的面试题提供python的测试题
使用地址:http://www.gtalent.cn/exam/interview?token=906315a76b5c14231889351088713f76

题目
判断101-200之间有多少个素数,并输出所有素数。

解法1 sqrt函数
程序分析:

1、判断素数的方法:用一个数分别去除2到sqrt(这个数),

2、如果能被整除,则表明此数不是素数,反之是素数。

程序源代码:

from math import sqrt
 
count = 0
flag = 1
for n in range(101,201):
    sqrtn = int(sqrt(n + 1))
    for i in range(2,sqrtn + 1):
        if n % i == 0:
            flag = 0
            break
    if flag == 1:
        print ('%-4d' % n,end=" ")
        count += 1
        if count % 10 == 0:
            print ('')
    flag = 1
print ('\n总的素数有:%d 个' % count)
运行结果:

解法2 list
程序分析:

1、判断素数的方法:用一个数分别去除2到这个数小1,

2、如果能被整除,则表明此数不是素数,反之是素数。

程序源代码:

list1 = []
for i in range(101,200):
    for j in range(2,i-1):
        if i%j ==0:
            break
    else:
        list1.append(i)
print("总的素数有:%d 个" %len(list1))
print("所有的素数如下:",list1)
运行结果:

还有更多其他的解法,欢迎一起交流学习
————————————————

我们的python技术交流群:941108876
智一面的面试题提供python的测试题
使用地址:http://www.gtalent.cn/exam/interview?token=364151fab9fb6e1b468f50b4d83afd42