石头剪刀布

题目要求:编写脚本,实现人机石头剪刀布游戏

#!/usr/bin/bash
declare -A array_key
array_key=(["rock"]=0 ["paper"]=1 ["scissors"]=2)
array_=(rock paper scissors)
key=1
stty erase '^H'
while [ $key -eq 1 ]
do
        let system_key_index=$RANDOM%3
        echo -e -n "\e[34mPlease input you gesture( rock or paper or scissors or quit): \e[0m"
        read self_key

        # exit
        if [ "$self_key" == "quit" ];then
                echo "Good bay!"
                exit
        fi

        # input error
        self_key_index=${array_key[$self_key]}
        if [ -z $self_key_index ];then
        echo "you input error!please input again!"
                continue
        fi
        
        let right=($system_key_index+1)%3
        echo -e "\e[32mcomputer input ${array_[$system_key_index]}"
        echo -e "you input $self_key\e[0m"
        
        if [ $system_key_index -eq $self_key_index ];then
                echo -e "\e[36myou are draw\e[0m!"
        elif [ $right -eq $self_key_index ];then
                echo -e "\e[35myou are win!\e[0m"
        else
                echo -e "\e[31myou are failure!\e[0m"
        fi
done

总结:

  • echo 的颜色输出的写法:echo -e “\e[33mthis is a text.\e[0m”
  • shell中的随机数变量RANDOM,范围:0~32767。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值