xphgz 发表于 2021-5-26 11:26:36

写的第一个小程序,能运行,但是我想要的功能不会写

本帖最后由 xphgz 于 2021-5-26 11:35 编辑

问题一:如何让这个程序可以一直循环下去,每次都可以产生新的随机数,而不是用一次就结束了

问题二:如何判断输入的是5位数的整数,而不是小于五位数,或者大于5位数,或者是字母其他字符。
如果是5位整数数字就可以继续运行,如果不是,就提示输入5位数字的整数。


from random import randint
suiji=randint(00000,99999)
c=str(suiji)
print("输入5位猜想数字:")

a=(input())
shuru=str(a)



suiji1=c
suiji2=c
suiji3=c
suiji4=c
suiji5=c

shuru1=a
shuru2=a
shuru3=a
shuru4=a
shuru5=a

if shuru1==suiji1:
      print("恭喜第一位数正确",shuru1,suiji1)
else:
      print("第一位数字错误",shuru1,suiji1)
if shuru2==suiji2:
      print("恭喜第二位数正确",shuru2,suiji2)
else:
      print("第二位数字错误",shuru2,suiji2)
if shuru3==suiji3:
      print("恭喜第三位数字正确",shuru3,suiji3)
else:
      print("第三位数字错误",shuru3,suiji3)
if shuru4==suiji4:
      print("恭喜第四位数字正确",shuru4,suiji4)
else:
      print("第四位数字错误",shuru4,suiji4)
if shuru5==suiji5:
      print("恭喜第五位数字正确",shuru5,suiji5)
else:
      print("第五位数字错误",shuru5,suiji5)
      print("开奖数是",suiji)
print("-----------------")

#以下内容是自己搞的,可有可无。清屏作用
qingli=input("按y清屏")
while qingli!="y":
    print("输入错误,请按y")
    qingli=input()

import os
os.system("cls")
print("清理完毕")

qq1151985918 发表于 2021-5-26 11:58:18

from random import randint

while True:
    print("\n--------------------------")
    rand_num = str(randint(10000, 99999))
    guess_num = input("输入5位猜想数字,输入 y 退出:")
    if guess_num in ["Y", "y"]:
      break
    while not (guess_num.isdigit() and len(guess_num) == 5):
      guess_num = input("输入错误请重新输入5位猜想数字:")
    for i in range(len(rand_num)):
      if rand_num == guess_num:
            print("第%d位数字正确"%(i + 1))
      else:
            print("第%d位数字错误"%(i + 1))
    print("随机数字:%s,猜想数字:%s"%(rand_num, guess_num))

xphgz 发表于 2021-5-26 12:04:53

qq1151985918 发表于 2021-5-26 11:58


厉害,几行代码就解决了我一大堆的代码问题
页: [1]
查看完整版本: 写的第一个小程序,能运行,但是我想要的功能不会写