剪刀石头布游戏shell脚本代码
时间: 2025-01-02 13:15:56 浏览: 7
剪刀、石头、布(Scissors, Paper, Stone,也称Rock-Paper-Scissors)是一个简单的小游戏,可以用Shell脚本来编写一个基本的命令行版本。下面是一个简单的示例,使用bash脚本:
```bash
#!/bin/bash
# 定义函数
play_game() {
echo -n "请输入你的选择 (1: 石头, 2: 布, 3: 剪刀): "
read choice
case $choice in
1) player="石头" ;;
2) player="布" ;;
3) player="剪刀" ;;
*) echo "无效输入,退出游戏。"; return 1 ;;
esac
# 计算电脑随机选择
computer=$((RANDOM % 3 + 1))
case $computer in
1) computer="石头" ;;
2) computer="布" ;;
3) computer="剪刀" ;;
esac
# 判断胜负并打印结果
if [ $((player == computer)) ]; then
echo "平局!$player 对 $computer"
elif [ $((player == 1 && computer == 3)) || ($player == 2 && computer == 1) || ($player == 3 && computer == 2) ]; then
echo "$player 赢了!$player 战胜 $computer"
else
echo "$computer 赢了!$computer 战胜 $player"
fi
}
# 开始游戏循环
while true; do
play_game
echo -n "再来一局吗? (y/n): "
read replay
[[ "$replay" =~ ^[Yy]$ ]] && continue
break
done
echo "谢谢参与!"
```
运行这个脚本,用户可以选择石头、布或剪刀,然后与电脑对战。你可以通过改变`replay`变量判断是否继续游戏。保存文件为`rps.sh`,然后用`chmod +x rps.sh`赋予执行权限,然后用`./rps.sh`启动。
阅读全文