kkk999de 发表于 2020-4-25 17:41:15

本帖最后由 kkk999de 于 2020-4-25 17:43 编辑

while 1:
    num = input('请输入一个正整数(输入q退出):')
    if num == 'q':
      print('再见')
      break
    try:
      n = int(num)
    except:
      print('输入不正确,请重新输入。')
      continue
    zhishu = True
    if n == 1:
      print('1既不是质数也不是合数。')
      zhishu = False
    for i in range(2, round(n*0.5)+1):
      if n % i == 0:
            print('%d是合数'%n)
            zhishu = False
            break   
    if zhishu:
      print('%d是质数'%n)

liuzhengyuan 发表于 2020-4-25 19:39:13

楼主代码优化版
print('输入数字,判断此数字是否为质数(输入Q退出程序)\nps:输入完按Enter出结果哟\n')
while 1:
    number = input('输入一个比 2 大的数:')
    if number == 'Q':
      break
    elif int(number) <= 2:
      print('输入错误,请重新输入')
    else:
      e = int(number)
      panb = True
      for i in range(2, e):
            if e % i == 0:
                panb = False
                break
      if panb:
            print(number + ' 是质数')
      else:
            print(number + ' 不是质数')

damon2009a 发表于 2020-4-27 21:18:45

感谢楼主无私奉献

majian890324 发表于 2020-4-29 14:38:26

我来学习学习~~~

Darylchen 发表于 2020-4-29 14:56:07

666

一个账号 发表于 2020-4-29 16:58:35

还是会扣的,别坑人

WangJS 发表于 2020-4-29 17:20:43

一个账号 发表于 2020-4-29 16:58
还是会扣的,别坑人

荣誉和贡献不会扣的吧,我从来没扣过{:10_329:}

一个账号 发表于 2020-4-30 09:04:57

WangJS 发表于 2020-4-29 17:20
荣誉和贡献不会扣的吧,我从来没扣过

因为你是 VIP 。。。

WangJS 发表于 2020-4-30 09:27:11

一个账号 发表于 2020-4-30 09:04
因为你是 VIP 。。。

{:10_262:}

aaron.yang 发表于 2020-5-2 11:01:58

看看

哈哈哥大 发表于 2020-5-3 11:05:46

学习

妹妹猪 发表于 2020-5-9 10:26:02

"""判断此数字是否为质数(输入Q退出程序)"""

while 1:
      n = int(input("输入一个比2大的整数:"))

      while n == "Q":
            break

      if n <= 2:
         print("输入错误,请重新输入")


      for x in range(2,n):
          if n % x == 0:
             print("不是质数")
             break
          else:
             print("是质数")
             break

妹妹猪 发表于 2020-5-9 10:51:12

"""判断此数字是否为质数(输入Q退出程序)"""

while 1:
      n = input("输入一个比2大的整数:")

      if n == "Q":
          break
      else:
         n = int(n)
         if n <= 2:
            print("输入错误,请重新输入")
      
      for x in range(2,n):
          if n % x == 0:
             print("不是质数")
             break
          else:
             print("是质数")
             break

kobetalent24 发表于 2020-5-9 15:09:17

我觉得参考答案比较适合像我这样的小白 容易懂一些嘿嘿

有谁懂 发表于 2020-5-11 12:02:11

本帖最后由 有谁懂 于 2020-5-11 12:51 编辑

q = True

while q:
    temp = input('输入一个比1大的整数(输入Q退出程序):')
    c = 0
    if temp != 'Q':
      num = int(temp)
      for i in range(1, num):
            if num % i == 0:
                c +=1

      if c >= 2:
            print(num, "不是质数")
      else:
            print(num, "是质数")
      
    else:
      q = False
   

香蕉柠檬树 发表于 2020-5-13 15:54:40

冰河星云 发表于 2020-4-25 13:57
我这个更智能

为啥我运算你的程序,3以上的都是合数啊,包括3都适合数

ForPorsche 发表于 2020-5-18 23:19:12

while True:
    temp = input('输入一个比2大的整数:')
    if temp == 'Q':
      break
    else:
      if int(temp) > 2:
            for i in range(2, int(temp)):
                if i % int(temp) == 0:
                  print(temp, '不是质数')
            else:
                print(temp, '是质数')
      else:
            print('输入错误,请重新输入')

天然呆丨 发表于 2020-5-19 17:40:42

x=int(input("请输入一个大于2的整数:\n"))
if x<=2:
    print("请输入大于二的整数")
elif x%2==1:
    print("%d是质数" %x)
elif x%2==0:
    print("%d不是质数" %x)

噗呲。 发表于 2020-5-21 11:31:48

感谢楼楼分享!

遁天入地1412 发表于 2020-5-22 17:18:27

{:5_109:}
页: 1 [2] 3
查看完整版本: 小白Python练习册(5)【鱼币福利】