简介
石头剪刀布 (猜拳游戏)
定义
剪刀、石头、布又称“猜丁壳”,古老而简单,这个游戏的主要目的是为了解决争议,因为三者相互制约,因此不论平局几次,总会有胜负的时候。
游戏规则中,石头克剪刀,剪刀克布,布克石头。
视频
动物世界:一场玩命的石头剪刀布,看似简单,可赢了有上百万奖金
使用spyder编写程序
1代程序
注
现阶段只能玩一次
源代码
# -*- coding: utf-8 -*-
"""
Created on Thu Nov 18 17:01:22 2021
@author: LZY
"""
import random
x=random.randint(1,3) #随机产生数字1,2,3
print()
print('石头用数字1表示\n剪刀用数字2表示\n布用数字3表示\n')
a=int(input('输入你决策:'))
#您的选择
if a==1:
print('你的选择是石头。')
elif a==2:
print('你的选择是剪刀。')
else:
print('你的选择是布。')
#机器的选择
if x==1:
print('机器的选择是石头。')
elif x==2:
print('机器的选择是剪刀。')
else:
print('机器的选择是布。')
#输出的结果
if a==x:
print('太可惜了,是平局~')
elif a-x==1:
print('抱歉,您输了…')
elif a-x==-2:
print('抱歉,您输了…')
elif a-x==2:
print('恭喜,您赢了~')
elif a-x==-1:
print('恭喜,您赢了~')
运行结果
2代程序
注
现阶段可以试玩三次了。
源代码
# -*- coding: utf-8 -*-
"""
Created on Thu Nov 18 17:01:22 2021
@author: LZY
"""
import random
print('石头用数字1表示-\n剪刀用数字2表示-\n布用数字3表示-\n')
for i in range(3):#试玩三局
x=random.randint(1,3) #随机产生数字1,2,3
while True:
a=int(input('输入你决策:'))
if a==1 or a==2 or a==3:
break
else:
print('请输入指定的数字')
#您的选择
if a==1:
print('你的选择是石头。')
elif a==2:
print('你的选择是剪刀。')
else:
print('你的选择是布。')
#机器的选择
if x==1:
print('机器的选择是石头。')
elif x==2:
print('机器的选择是剪刀。')
else:
print('机器的选择是布。')
#输出的结果
if a==x:
print('太可惜了,是平局~')
elif a-x==1:
print('抱歉,您输了…')
elif a-x==-2:
print('抱歉,您输了…')
elif a-x==2:
print('恭喜,您赢了~')
else:
print('恭喜,您赢了~')
运行结果
3代程序
注
现阶段由用户选择可以玩多少次,以三次为一个选择提醒用户,是否继续玩,实现可退出,可继续的功能。
源代码
# -*- coding: utf-8 -*-
"""
Created on Thu Nov 18 17:01:22 2021
@author: LZY
"""
import random
print('石头用数字1表示-\n剪刀用数字2表示-\n布用数字3表示-\n')
while True:
for i in range(3):#试玩三局
x=random.randint(1,3) #随机产生数字1,2,3
while True:
a=int(input('输入你决策:'))
if a==1 or a==2 or a==3:
break
else:
print('请输入指定的数字')
#您的选择
if a==1:
print('你的选择是石头。')
elif a==2:
print('你的选择是剪刀。')
else:
print('你的选择是布。')
#机器的选择
if x==1:
print('机器的选择是石头。')
elif x==2:
print('机器的选择是剪刀。')
else:
print('机器的选择是布。')
#输出的结果
if a==x:
print('太可惜了,是平局~')
elif a-x==1:
print('抱歉,您输了…')
elif a-x==-2:
print('抱歉,您输了…')
elif a-x==2:
print('恭喜,您赢了~')
else:
print('恭喜,您赢了~')
xz=input('你想继续玩吗?(yes/no):')
if xz=='no':
break
print('感谢来玩,欢迎下次再来~')