剪刀石头布shell
时间: 2024-01-26 16:14:35 浏览: 21
以下是一个用Shell编写的简单剪刀石头布游戏的示例:
```shell
#!/bin/bash
# 定义函数,用于输出用户和电脑的出拳结果
function printResult() {
echo "你出的拳是:$1"
echo "电脑出的拳是:$2"
}
# 提示用户出拳,并接收用户输入
read -p '请出拳[1(石头) | 2(剪刀) | 3(布)]:' person
# 生成电脑的随机出拳
computer=$((RANDOM % 3 + 1))
# 判断用户和电脑的出拳结果,并输出结果
if [ $person -eq $computer ]; then
printResult $person $computer
echo "平局"
elif [ $person -eq 1 -a $computer -eq 2 ] || [ $person -eq 2 -a $computer -eq 3 ] || [ $person -eq 3 -a $computer -eq 1 ]; then
printResult $person $computer
echo "你赢了"
else
printResult $person $computer
echo "你输了"
fi
```
相关问题
shell脚本实现剪刀石头布
可以使用shell脚本实现剪刀石头布游戏。可以定义函数来存放经常使用到的输出语句,例如引用中的`often`函数。然后提示用户出拳,并接收用户的输入,可以使用`read`命令来实现。接着,可以使用`$RANDOM`变量来生成电脑出拳的随机数,然后根据用户和电脑的出拳结果进行比较,输出胜负结果。具体实现可以参考下面的代码:
```bash
# 定义函数ofen,存放经常使用到的输出语句
function often(){
echo "你出的拳是:$person"
echo "电脑出的拳是:$computer"
}
# 用数字1、2、3分别模拟石头、剪刀、布
echo "你可以输入1,2,3代表你出的拳,1表示石头,2表示剪刀,3表示布"
# 提示用户出拳,并接收出拳
read -p '请出拳[1(石头) | 2(剪刀) | 3(布)]:' person
# 生成电脑出拳的随机数
computer=$((RANDOM%3+1))
# 判断胜负
if [ $person -eq $computer ]; then
echo "平局"
often
elif [ $person -eq 1 -a $computer -eq 2 ] || [ $person -eq 2 -a $computer -eq 3 ] || [ $person -eq 3 -a $computer -eq 1 ]; then
echo "你赢了"
often
else
echo "你输了"
often
fi
```
编写shell函数 实现剪刀石头布
好的,以下是一个使用 Shell 函数实现剪刀石头布游戏的示例:
```bash
#!/bin/bash
function play_game {
options=("剪刀" "石头" "布")
random_index=$((RANDOM % 3))
computer_choice=${options[random_index]}
echo "欢迎来到剪刀石头布游戏!"
echo "请出拳:剪刀、石头、布"
read user_choice
echo "你出了:$user_choice"
echo "电脑出了:$computer_choice"
if [ "$user_choice" == "$computer_choice" ]; then
echo "平局!"
elif [ "$user_choice" == "剪刀" ] && [ "$computer_choice" == "布" ]; then
echo "你赢了!"
elif [ "$user_choice" == "石头" ] && [ "$computer_choice" == "剪刀" ]; then
echo "你赢了!"
elif [ "$user_choice" == "布" ] && [ "$computer_choice" == "石头" ]; then
echo "你赢了!"
else
echo "你输了!"
fi
}
play_game
```
这个脚本定义了一个名为 `play_game` 的函数,该函数会随机生成电脑的出拳,并等待用户输入自己的出拳,最后输出比赛结果。你可以在脚本中调用该函数,以开始一次新的游戏。