题目1:猜年龄游戏
# 要求:
# 允许用户最多尝试3次,3次都没猜对的话,就直接退出,如果猜对了,打印恭喜信息并退出
age = '18'
count = 0
while count < 3:
guess_age = input('请输入您猜测的年龄:')
if(guess_age == age):
print('恭喜你,猜对了')
break
else:
print('再来一次')
count += 1
else:
print('抱歉,您的次数超过三次')
解题思路:
1.首先我们先分析一下变量,题目有次数规定,所以得有个计数器count来记录是否猜了三次,然后猜年龄,得有一个已知年龄和用户输入年龄
age = '18'
count = 0
guess_age = input('请输入您猜测的年龄:')
tip:这里由于是用户输入的所以肯定是字符串,所以为了避免麻烦直接设置变量age的初始值为字符串类型
2.猜对了,直接退出,猜错了可以再尝试一次,所以加个条件判断
if(guess_age == age):
print('恭喜你,答对了')
else:
print('没关系,可以再来一次')
3.然后我们在套一层循环,让它可以猜错了连续执行三次,用户输入的input也要循环三次,所以也要放入循环中,猜对了要直接退出循环
age = '18'
count = 0
while count < 3:
guess_age = input('请输入您猜测的年龄:')
if(guess_age == age):
print('恭喜你,答对了')
break ## 猜对了直接退出循环
else:
print('没关系,可以再来一次')
count+=1 ## 为了记录猜错的次数
4.最后,为了优化体验,我们可以用else搭配while,给猜错三次的用户一个提示信息
age = '18'
count = 0
while count < 3:
guess_age = input('请输入您猜测的年龄:')
if(guess_age == age):
print('恭喜你,答对了')
break ## 猜对了直接退出循环
else:
print('没关系,可以再来一次')
count+=1 ## 为了记录猜错的次数
else:
print('抱歉,您猜的次数已经超过三次'
题目2:猜年龄游戏升级版
# 要求:
# 允许用户最多尝试3次
# 每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序
# 如何猜对了,就直接退出
age = '18'
count = 0
while count < 3:
guess_age = input('请输入您猜测的年龄:')
if(guess_age == age):
print('恭喜您,猜对了')
break
else:
print('再猜一次')
count += 1
if(count >= 3):
res = input('您已经猜错三次了,是否要继续,继续(y或Y),不继续(n或N)')
if(res == 'y' or res == 'Y'):
count = 0
elif(res == 'n' or res == 'N'):
break
解题思路:
1.首先,我们接着上道题的思路,这道题说尝试三次错误后询问用户是否想继续玩,所以加个条件判断就ok了
if(count >= 3):
res = input('您已经猜错三次了,是否要继续,继续(y或Y),不继续(n或N)')
2.然后我们还需要判断用户输入的内容是否是继续玩,如果不玩就直接退出循环,如果还想继续我们可以把count重置为0,这样就可以又循环三次,就相当于用户再猜三次
if(res == 'y' or res == 'Y'):
count = 0
elif(res == 'n' or res == 'N'):
break
3.最后,再加上上道题的代码
age = '18'
count = 0
while count < 3:
guess_age = input('请输入您猜测的年龄:')
if(guess_age == age):
print('恭喜您,猜对了')
break
else:
print('再猜一次')
count += 1
if(count >= 3):
res = input('您已经猜错三次了,是否要继续,继续(y或Y),不继续(n或N)')
if(res == 'y' or res == 'Y'):
count = 0
elif(res == 'n' or res == 'N'):
break