iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >Shell脚本实现的猜数字小游戏
  • 548
分享到

Shell脚本实现的猜数字小游戏

小游戏脚本数字 2022-06-04 21:06:25 548人浏览 薄情痞子
摘要

生成的密码和用户输入可以接受重复数字。 所以相对一般规则的猜数字可能难度要大不少。 本版本规则: A--数字对,位置也对 B--排除A的结果后,数字对,但位置不对 开始后,系统化初始化一个4位可重复数字,如

生成的密码和用户输入可以接受重复数字。
所以相对一般规则的猜数字可能难度要大不少。

本版本规则:

A--数字对,位置也对
B--排除A的结果后,数字对,但位置不对

开始后,系统化初始化一个4位可重复数字,如“1223”。假设用户第一次输入“1234”,那么系统将提示“2A1B”,前两位数字“12”相同并且位置也相同,为“2A”。后两位数字中,用户输入的“3”与密文中“3”相同,但两者位置不同,则为“1B”,最终结果为“2A1B”。

再假设用户此时输入“1232”,那么结果则为“2A2B”,计算方法与前次一样。

代码如下:

#!/bin/bash

clear

echo

echo "###################################################################"

echo "#  this is a bash-shell game write by Email:breeze7086@gmail.com  #"

echo "# the game called *digits*,and this version have repeated numbers #"

echo "#                           version 1.0                           #"

echo "###################################################################"

echo -e "nn"

declare INPUT

declare PASSWord

declare A

declare B

declare X

declare Y

declare LOOP

#This funtion init the variable PASSWORD that user need to guess

init_password()

{

        PASSWORD=`echo $(($RANDOM%10000))`

        echo $PASSWORD | grep '^[0-9]{4}$' >/dev/null 2>&1

        if [ $? != 0 ]

        then

                init_password

        else

                input

        fi

}

#This funtion accept the input from user's keyboard

input()

{

        echo -n "please input a number between 0000-9999:"

        read INPUT

        echo $INPUT | grep '^[0-9]{4}$' >/dev/null 2>&1

        if [ $? != 0 ]

        then

                echo "retry a number between 0000-9999 and do not input a char"

                input

        else

                judge

        fi

}

#This funtion is the main funtion

judge()

{

        X=$INPUT

        Y=$PASSWORD

        while [ $INPUT != $PASSWORD ]

        do

                A=0

                B=0

                judge_a

                judge_b

                LOOP=`expr $LOOP + 1`

                echo "****************************"

                echo "*           "$A"A"$B"B           *"

                echo "****************************"

                input

        done

}

#This funtion count the variable A's value

judge_a()

{

                for i in `seq 4`

                do

                        VAR_INPUT=`expr substr "$X" $i 1`

                        for j in `seq 4`

                        do

                                VAR_PASSWORD=`expr substr "$Y" $j 1`

                                if [[ $VAR_INPUT = $VAR_PASSWORD && $VAR_INPUT != "" && $VAR_PASSWORD != "" && $i = $j ]]

                                then

                                        A=`expr $A + 1`

                                        X=`expr substr $X 1 "$[$i-1]"``expr substr $X "$[$i+1]" 4`

                                        Y=`expr substr $Y 1 "$[$i-1]"``expr substr $Y "$[$i+1]" 4`

                                        judge_a

                                fi

                        done

                done

}

#This funtion count the variable B's value

judge_b()

{

                for i in `seq 4`

                do

                        VAR_INPUT=`expr substr "$X" $i 1`

                        for j in `seq 4`

                        do

                                VAR_PASSWORD=`expr substr "$Y" $j 1`

                                if [[ $VAR_INPUT = $VAR_PASSWORD && $VAR_INPUT != "" && $VAR_PASSWORD != "" ]]

                                then

                                        B=`expr $B + 1`

                                        X=`expr substr "$X" 1 "$[$i-1]"``expr substr "$X" "$[$i+1]" 4`

                                        Y=`expr substr "$Y" 1 "$[$j-1]"``expr substr "$Y" "$[$j+1]" 4`

                                        judge_b

                                fi

                        done

                done

}

#This is the begin of script

LOOP=1

init_password

echo "#############################################"

echo "#congratulations!You have tried $LOOP times!    #"

echo "#        The password is $PASSWORD !             #"

echo "#############################################"

--结束END--

本文标题: Shell脚本实现的猜数字小游戏

本文链接: https://www.lsjlt.com/news/18313.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Shell脚本实现的猜数字小游戏
    生成的密码和用户输入可以接受重复数字。 所以相对一般规则的猜数字可能难度要大不少。 本版本规则: A--数字对,位置也对 B--排除A的结果后,数字对,但位置不对 开始后,系统化初始化一个4位可重复数字,如...
    99+
    2022-06-04
    小游戏 脚本 数字
  • Shell脚本实现猜数字游戏
    本文实例为大家分享了Shell实现猜数字游戏的具体代码,供大家参考,具体内容如下 这里的guem可以随便写,比如A、B之类的也可以 vim guem.sh 编辑脚本 #!/bin/bash init() { e...
    99+
    2022-06-04
    Shell 猜数字
  • shell脚本实现猜数游戏
    用shell脚本写一个猜数游戏 最近用shell写的一个猜数游戏,包括4个不同难度,脚本如下: #作者:p_小王 echo '欢迎来到猜数游戏!' while true do read -p '开始/退出(y/n...
    99+
    2022-06-04
    shell 猜数
  • Shell脚本如何实现猜数字游戏
    这篇文章主要介绍了Shell脚本如何实现猜数字游戏,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。这里的guem可以随便写,比如A、B之类的也可以vim guem.s...
    99+
    2023-06-09
  • shell实现猜数字小游戏
    本文实例为大家分享了shell实现猜数字游戏的具体代码,供大家参考,具体内容如下 #!/bin/bash # 猜数字编程游戏 # 系统随机生成一个数字,给这个数字定一个范围(1-60),让用户输入猜的数字,对输入进行...
    99+
    2022-06-04
    shell 猜数字
  • shell脚本怎么实现猜数游戏
    这篇文章主要介绍shell脚本怎么实现猜数游戏,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!用shell脚本写一个猜数游戏最近用shell写的一个猜数游戏,包括4个不同难度,脚本如下:#作者:p_小王echo&nbs...
    99+
    2023-06-09
  • 101个shell脚本 猜数字游戏代码
    原本书上这个例子是教调试脚本的,它故意给出的脚本中有几个错误,教我们认识系统提示的错误,并修改运行。但比较难写出来,所以把修改好了的脚本放上来,这个脚本比较有趣味的 #!/bin/sh # hilow...
    99+
    2022-06-04
    脚本 代码 数字
  • shell实现猜数字小游戏的方法
    这篇文章给大家分享的是有关shell实现猜数字小游戏的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。shell实现猜数字游戏的具体代码如下#!/bin/bash# 猜数字编程游戏# 系统随...
    99+
    2023-06-09
  • Shell实现猜数字游戏
    本文实例为大家分享了Shell实现猜数字游戏的具体代码,供大家参考,具体内容如下 初学Shell时,需要使用shell完成各种各样的小目标,比如输入一个日期,计算那天是星期几,又或者编写一个小游戏。 首先给大家介绍一个概...
    99+
    2022-06-04
    Shell 猜数字
  • Java实现猜数字小游戏
    目录1. 开篇简介2. 需求简介3. 思路分析4. 步骤讲解5. 代码实现6. 如何更快猜到数字的方法总结1. 开篇简介 嗨,大家好!!!『』最近『马上』就要『过年』了,先祝大家『新...
    99+
    2022-11-13
  • Python实现猜数字小游戏
    首先需求一共有五次猜测机会,在五次机会中才对就赢了,结束游戏,五次都猜错就输了,也结束游戏。首先先画个草图,这是我画的草图 再根据草图编写一个窗口,一个Label,一个Entry,...
    99+
    2022-11-12
  • Shell中怎么实现一个猜数字小游戏
    Shell中怎么实现一个猜数字小游戏,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。生成的密码和用户输入可以接受重复数字。所以相对一般规则的猜数字可能难度要大不少。本版本规则:A...
    99+
    2023-06-09
  • 用js实现猜数字小游戏
    上周老师留的小作业,做一个猜数字的小游戏,个人感觉挺有意思的,就随便写了写,有些地方逻辑并不是很合理(学生小白勿喷)。主要内容是随机生成0-100的正整数,猜六次每次提示猜的大了还是...
    99+
    2022-11-12
  • 怎么用Shell实现猜数字游戏
    本篇内容介绍了“怎么用Shell实现猜数字游戏”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!这篇文章主要为大家详细介绍了Shell实现猜数字...
    99+
    2023-06-05
  • C语言实现猜数字小游戏
    利用C语言代码实现猜数字小游戏: #include <stdlib.h> #include <stdio.h> #include <time.h&g...
    99+
    2022-11-12
  • linux实现猜数字小游戏源码
    一个简单的linux猜数字小游戏源码 游戏规则: 猜数字游戏通常由两个人玩,一方出数字,一方猜。出数字的人要想好一个没有重复数字的 4 个数,不能让猜的人知道。猜的人就可以开始猜。每猜一个数字,出数者就要根据这个数字...
    99+
    2022-06-03
    linux 猜数字
  • java基础实现猜数字小游戏
    本文实例为大家分享了java实现猜数字小游戏的具体代码,供大家参考,具体内容如下 介绍: 电脑随机生成一个1-100的随机数,用户输入一个数;电脑判断输入数与随机数之间的大小,分别提...
    99+
    2022-11-12
  • python猜数字小游戏实现代码
    教大家做一个简易的猜数字的游戏,但确实蛮简单的,我这个四年级的小盆友也才学了一天,所以给那些不会的教一下。 我们先来看导入模块: """ 简易python猜数小游戏""" impo...
    99+
    2022-11-12
  • Java实现猜数字小游戏代码
    目录▲游戏规则:▲实现思路:实验结果:总结▲游戏规则: 系统随机生成一个范围0——100的数,用户输入数字,判断该数字是大于,小于,还是等于随机生成的数字,等...
    99+
    2022-11-12
  • C++实现简单猜数字小游戏
    本文实例为大家分享了C++实现简单猜数字小游戏的具体代码,供大家参考,具体内容如下 一、随机数 本文采用time(0)作为srand()函数的种子生成随机数,time(0)为1970...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作