打印出1~1000 之间包含3 的数字_蓝桥杯青少年Python创意编程大赛省赛第二题答案_

打印出1~1000 之间包含3 的数字_蓝桥杯青少年Python创意编程大赛省赛第二题答案_

"""
编程实现:
打印出1~1000 之间包含3 的数字;
如果3 是连在一起的(如233)则在数字前加上&;
如果这个数字是质数则在数字后加上*,例:(3,13*,23*,&33,43*…&233*…)。
输入:
无
输出:
按照题意输出的数字,每行一个数字;
样例输出:
3
13*
23*
&33
……

"""

def isprime(n):
    if n < 2:return False
    for x in  range(2,n):
        if n % x == 0:
            return False
    return True

for x in range(1,1001):
    if '3' in str(x):

        y = str(x)
        if '33' in str(x):
            y = '&' + y             
        if isprime(x):
            y =  y + '*'

        print(y)
       

 

李兴球

李兴球的博客是Python创意编程原创博客

评论已关闭。