用户:
吉祥如意喵查看:7 回复:6 评论:7 创建时间:2021-02-27T20:44:12
10、 打印出 1~1000 之间包含 3 的数字; 如果 3 是
连在一起的(如 233) 则在数字前加上&;
如 果 这 个 数 字 是 质 数 则 在 数 字 后 加 上 *, 例 :
(3,13*,23*,&33,43*…&233*…) 。
漫威粉小王首先打印出含有3的数字用for循环,初始值为3,最终值为1000,步长是10。然后检索俩个3只需要将整数类型转化为字符串类型,然后用find函数找出来。检索质数需要用for循环,将每个数字分别从1到这个数字中间的所有的数一个一个对这个数字取余,如果取余结果的值有0,那么这个数就不是质数,用if语句跳过就行了。至于加上&*,最好将数字转化为字符串然后加上
点赞0
评论
屑studentimport math #导入math库
#数据量不大就用简单的方法了哈
def su(a): #判断素数的函数
for i in range(2,int(math.sqrt(a))+1):#判断每一个是否可以整除
if(a%i==0): #可以整除,不是质数,直接返回
return False
return True#都不可以整除,是质数
def lx3(a):#判断3是否有连续,注意要传入的是字符串
#喵(
# 不会用很多函数,这里就手打吧
f=0#统计有几个3
for i in a:#遍历
if(i=="3"):#如果是3
f+=1#个数加1
if(f<2):#个数<2不可能有连续
return False
elif(f==3):#因为最大数<1000,所以有三个(333)肯定是连续的
return True
else:#2个暂时想不到好方法,就穷举吧
if(len(a)==2):#长度是2必定连续
return True
else:#长度为3
if(a[0]==a[2]=="3"):#3_3不连续
return False
else:#其他都连续
return True
for i in range(1000):
b=str(i)#转化成字符串存放
if("3" in b):#如果有3
#下面两个判断顺序不能换
if(lx3(b)):#分别判断
b="&"+b
if(su(i)):#分别判断
b=b+"*"
print(b,end=",")#输出,逗号隔开
#真的好多啊
#BUG可以反馈点赞1
评论
屑studentimport math #导入math库
#数据量不大就用简单的方法了哈
def su(a): #判断素数的函数
for i in range(2,int(math.sqrt(a))+1):#判断每一个是否可以整除
if(a%i==0): #可以整除,不是质数,直接返回
return False
return True#都不可以整除,是质数
def lx3(a):#判断3是否有连续,注意要传入的是字符串
#喵(
# 不会用很多函数,这里就手打吧
f=0#统计有几个3
for i in a:#遍历
if(i=="3"):#如果是3
f+=1#个数喵数<2不可能有连续
return False
elif(f==3):#因为最大数<1000,所以有三个(333)肯定是连续的
return True
else:#2个暂时想不到好方法,就穷举吧
if(len(a)==2):#长度是2必定连续
return True
else:#长度为3
if(a[0]==a[2]=="3"):#3_3不连续
return False
else:#其他都连续
return True
nu=True#是不是第一个
for i in range(1000):
b=str(i)#转化成字符串存放
if("3" in b):#如果有3
#下面两个判断顺序不能换
if(lx3(b)):#分别判断
b="&"+b
if(su(i)):#分别判断
b=b+"*"
if(nu):#是第一个
print(b,end="")
nu=False
else:
print(","+b,end="")#输出,逗号隔开
#真的好多啊
#BUG可以反馈点赞0
评论
伴雪纷飞def s(i): # 判断素数
for e in range(2, int(i)):
i = str(i)
if int(i) % e == 0 and len(i.split('3'))-1 == 1:
print(i)
break
elif len(i.split('3'))-1 > 1 and int(i) % e == 0:
print('&', i)
break
elif len(i.split('3'))-1 == 1:# 判断是否含有3
print('*', i)
break
elif len(i.split('3'))-1 > 1:
print('*', '&', i)
break
for i in range(1000): # 遍历一下
s(i)
点赞0
评论