热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

《计算机是怎样跑起来的》优化使用VBScript语言编写的石头剪刀布游戏

今天在看失泽久雄先生著写的《计算机是怎样跑起来的》时,其中有一段使用VBScript编写的石头剪刀布游戏。由于自己是个小白,从来没听说过这种不是特别热门

今天在看失泽久雄先生著写的《计算机是怎样跑起来的》时,其中有一段使用Vbscript编写的石头剪刀布游戏。由于自己是个小白,从来没听说过这种不是特别热门的脚本语言,一看用windows系统的记事本写的代码,保存后,竟然后缀名一改成.VBS就可以在Windows 98版本以上的Windows系统中运行,像这样
在这里插入图片描述
于是颇有兴致的实现了一番,并在网上学习了一些Vbscript的语法,对书中的这个小程序做了进一步的优化。
由于是在windows系统自带的笔记本中进行编写,所以敲代码的时候非常容易出错,不过好在你可以双击.vbs的文件,如果语法什么的有错误,它会替你检查并报错。
在这里插入图片描述

书中小程序的源代码

在这里插入图片描述

优化Vbscript编写的石头剪刀布游戏代码实现

'初始化表示手势的变量
Dim gesture(2)
gesture(0) = "石头"
gesture(1) = "剪刀"
gesture(2) = "布"'初始化对玩家获胜次数计数的变量
wins = 0'初始化随机数种子
Randomize'显示程序启动信息
MsgBox "破产版石头剪刀布游戏 Version-2.0 by HelloStars"'进行五轮比试
Dim Count:Count = 5
While Count <> 0
Count&#61;5For i &#61; 1 to 5&#39;输入玩家的手势user &#61; InputBox("游戏共进行5次&#xff0c;请输入手势所代表的数字&#xff08;0&#xff1a;石头、1&#xff1a;剪刀、2&#xff1a;布&#xff09;")&#39;先判断玩家输入的手势是否超过选择的范围If not (IsNUmeric(user)) Thenmsgbox"您输入的不是数字&#xff0c;请重新开始游戏" Exit ForElseif user>&#61;3 or user <0 Thenmsgbox"您输入的数字超出范围&#xff0c;请重新开始游戏" Exit ForElse&#39;用随机数决定计算机的手势 dim max,minmax&#61;2min&#61;0computer &#61; (Int((max-min&#43;1)*Rnd&#43;min))&#39;生成提示双方出的手势的字符串s &#61; "玩家&#xff1a;" & gesture(user) & "计算机&#xff1a;" & gesture(computer)End If&#39;判定胜负&#xff0c;显示结果If CInt(user) &#61; computer ThenMsgBox s & "---平局&#xff01;"ElseIf computer &#61; (user &#43; 1) Mod 3 ThenMsgBox s & "---玩家获胜&#xff01;"wins &#61; wins &#43; 1Else MsgBox s & "---计算机获胜&#xff01;"End If Count &#61; Count-1Next
Wend
&#39;显示玩家的获胜次数
MsgBox "玩家获胜次数&#xff1a;" & wins

结果如下&#xff1a;有兴趣的朋友可以自己动手实践一下&#xff0c;
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


推荐阅读
  • 本文介绍了三种方法来实现在Win7系统中显示桌面的快捷方式,包括使用任务栏快速启动栏、运行命令和自己创建快捷方式的方法。具体操作步骤详细说明,并提供了保存图标的路径,方便以后使用。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 本文介绍了如何清除Eclipse中SVN用户的设置。首先需要查看使用的SVN接口,然后根据接口类型找到相应的目录并删除相关文件。最后使用SVN更新或提交来应用更改。 ... [详细]
  • 服务器上的操作系统有哪些,如何选择适合的操作系统?
    本文介绍了服务器上常见的操作系统,包括系统盘镜像、数据盘镜像和整机镜像的数量。同时,还介绍了共享镜像的限制和使用方法。此外,还提供了关于华为云服务的帮助中心,其中包括产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题和视频帮助等技术文档。对于裸金属服务器的远程登录,本文介绍了使用密钥对登录的方法,并提供了部分操作系统配置示例。最后,还提到了SUSE云耀云服务器的特点和快速搭建方法。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 3.223.28周学习总结中的贪心作业收获及困惑
    本文是对3.223.28周学习总结中的贪心作业进行总结,作者在解题过程中参考了他人的代码,但前提是要先理解题目并有解题思路。作者分享了自己在贪心作业中的收获,同时提到了一道让他困惑的题目,即input details部分引发的疑惑。 ... [详细]
  • CentOS 6.5安装VMware Tools及共享文件夹显示问题解决方法
    本文介绍了在CentOS 6.5上安装VMware Tools及解决共享文件夹显示问题的方法。包括清空CD/DVD使用的ISO镜像文件、创建挂载目录、改变光驱设备的读写权限等步骤。最后给出了拷贝解压VMware Tools的操作。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • IjustinheritedsomewebpageswhichusesMooTools.IneverusedMooTools.NowIneedtoaddsomef ... [详细]
author-avatar
icanfly2502872173_635
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有