青木绘里 2021-10-05 15:03 采纳率: 100%
浏览 334
已结题

Python输出包含3的数字

打印出 1~1000 之间包含 3 的数字
如果 3 是连在一起的(如 233)则在数字前加上&;
如果这个数字是质数则在数字后加上*,例:(3,13*,23*,&33,43…&233…)。
我写的代码是
for i in range(1001):
data=str(i)
if '33' in data:
for j in range(2,i):
if i%j==0:
print("&"+data)
break
else:
print(data+"")
elif '3' in data:
for k in range(2,i):
if i%k==0:
print(data)
break
else:
print(data+"
")
但是是有错误的,问题出在哪里呢

  • 写回答

3条回答 默认 最新

  • 关注

    麻烦用代码格式粘贴一下你写的代码,方便调试
    示例代码如下:

    import math
    
    
    def is_prime(number):
        if number > 1:
            if number == 2:
                return True
            if number % 2 == 0:
                return False
            for current in range(3, int(math.sqrt(number) + 1), 2):
                if number % current == 0:
                    return False
            return True
        return False
    
    
    for i in range(1000):
        j=str(i)
        if '3' in str(i):
            if is_prime(i):
                j=j+'*'
            if '33' in j:
                j='&'+j
            print(j,end=' ')
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月13日
  • 已采纳回答 10月5日
  • 创建了问题 10月5日

悬赏问题

  • ¥15 网络科学导论,网络控制
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)