首页 > 其他分享 >简单猜数字游戏设计

简单猜数字游戏设计

时间:2023-07-07 13:57:39浏览次数:28  
标签:guess 游戏 guessInput result 简单 position 100 数字

下面是游戏设计要求:

游戏随机选择一个 100 以内的自然数, 然后让玩家猜出这个数字。每轮告诉玩家他猜数字高了还是低了,直到猜出数字为止。

代码实现
通过上述游戏要求,我们来探索如何将上述要求转换为代码。

初始设置
包含一个游戏标题,一个用于输入内容输入框,一个提交按钮,以及
一个提示游戏的游戏说明

<body>
<h1>Guess the Number</h1>
<div class="input-group">
    <input type="number" id="guessInput" placeholder="Enter you guess" min="1" max="100">
    <button id="submitBtn">submit</button>
</div>
<div class="result" id="result"></div>
</body>

下面是添加的css样式。

    <style>
        h1{
            position: absolute;
            left: 40%;
            color: #1b44ee;
        }
        .input-group{
            position: relative;
        }
        #guessInput{
            width: 111px;
            height: 60px;
            position: absolute;
            top: 80px;
            left: 41%;
            border-radius: 50px;
        }
        #submitBtn{
            width: 111px;
            height: 60px;
            background: #1b44ee;
            color: #ffffff;
            position: absolute;
            top: 80px;
            left: 51%;
            border-radius: 50px;

        }
        .result{
            text-align: center;
            position: absolute;
            left: 38%;
            top: 170px;
        }
    </style>

最终实现效果。

JS部分
首先声明一个100以内的随机数
Math.floor是向下取整这样2.1与2.9就没有区别了然后使用 Math.random() 函数生成一个介于 0 和 1 之间的随机数,乘以 101 并向下取整,得到一个介于 0 和 100 之间的随机整数,并将其赋值给变量 targetNumber。
然后定义一个guessCount 用来记录游戏次数,初始值为0,当游戏结束时输出。

const targetNumber = Math.floor(Math.random()*101)

let guessCount = 0
const guessInput = document.getElementById('guessInput')
const submitBtn= document.getElementById('submitBtn')
const result= document.getElementById('result')


这一行将输入框中的值转换为整数,并将其赋值给变量 guess。
const guess = parseInt(guessInput.value);

这一行检查输入是否合法。如果输入不是一个数字,或者数字不在 0 到 100 的范围内,函数将返回一个错误消息,并且不会执行后面的代码。

if (isNaN(guess) || guess < 0 || guess > 100) {
  return (result.textContent = "Please enter a valid number between 0 and 100.");
}


guessCount++;
这一行将猜测次数加 1。

 

这一行检查猜测是否正确。如果猜测正确,函数将返回一个祝贺消息,并且禁用提交按钮。

if (guess === targetNumber) {
  result.textContent = `Congratulations! You guessed the correct number in ${guessCount} attempts`;
  submitBtn.disabled = true;
  return;
}


这一行告诉用户他们的猜测是高了还是低了,并提示他们再试一次。

if (guess < targetNumber) result.textContent = "Too Low. Try again";
else result.textContent = "Too High. Try again";


这两行清空输入框并将焦点放回到输入框中,以便用户可以继续猜测。

guessInput.value = "";
guessInput.focus();



标签:guess,游戏,guessInput,result,简单,position,100,数字
From: https://www.cnblogs.com/labixiaoxinxin/p/17534749.html

相关文章

  • 数组的简单应用
    //slice截取console.log(arr.slice(1,3))//返回一个数组,从1开始截取,到3结束,不包括3console.log(arr)//原数组不变//push后面添加//pop后面删除//shift前面删除//unshift前面增加//splice功能非常强大,可以在任意位置增删改//改arr.splice......
  • C++ 设计模式之简单工厂模式
    设计模式之简单工厂模式(C++)简单工厂模式,主要用于创建对象。新添加类时,不会影响以前的系统代码。核心思想是用一个工厂来根据输入的条件产生不同的类,然后根据不同类的virtual函数得到不同的结果。优点:适用于不同情况创建不同的类时。缺点:客户端必须要知道基类和工厂类,耦合性差......
  • BZOJ 1915: [Usaco2010 Open]奶牛的跳格子游戏 单调队列优化dp
    1915:[Usaco2010Open]奶牛的跳格子游戏TimeLimit: 4Sec  MemoryLimit: 64MBSubmit: 281  Solved: 110[Submit][Status][Discuss]Description奶牛们正在回味童年,玩一个类似跳格子的游戏,在这个游戏里,奶牛们在草地上画了一行N个格子,(3<=N<=250,000),编号为1..N......
  • BZOJ 1022: [SHOI2008]小约翰的游戏John SG函数 Anti−SG
    1022:[SHOI2008]小约翰的游戏JohnTimeLimit: 1Sec  MemoryLimit: 162MBSubmit: 2667  Solved: 1701[Submit][Status][Discuss]Description小约翰经常和他的哥哥玩一个非常有趣的游戏:桌子上有n堆石子,小约翰和他的哥哥轮流取石子,每个人取的时候,可以随意选择一......
  • 第二天:DOS常用简单命令
    常用快捷键及简单DOS指令常用快捷键ctrl+C复制ctrl+v粘贴ctrl+A全选ctrl+S保存ctrl+X剪切ctrl+Z撤销Alt+F4关闭窗口Win+E打开我的电脑Win+R打开运行   ctrl+Alt+A截图 简单DOS指令 打开cmd的方式 开始菜单中找寻......
  • IT运维的福音!WeOps综合服务让运维更简单
    国家十四五规划及2035年远景目标纲要提到,要加快数字经济、数字社会、数字政府等以数字化转型整体驱动生产方式、生活方式和治理方式变革。在数字化进程中,企业ERP系统、医院HIS系统、PICS系统、制造业MES系统等核心系统越发重要,对IT依赖度越来越高,对业务连续性保障、IT服务用户满意......
  • jQuery简单介绍与用法
    jQuery简单介绍与用法 一、jQuery简介1.简化DOM操作:jQuery提供了简单而强大的选择器,可以轻松地选取HTML元素,并对其进行操作。通过使用jQuery的方法,可以轻松地操纵元素的属性、样式、内容等。2.事件处理:jQuery简化了事件处理的过程。可以使用jQuery的事件绑定方......
  • springcloud- hystrix服务降级简单讲解
    在出现错误的时候我们需要即使进行处理并返回提示信息给用户实现交互友好化,我们使用一下注解来实现服务降级功能,一般我们将服务降级配置在客户端相关注解provider8001 ​ @EnableCircuitBreaker //服务降级激活注解服务端主启动类 @HystrixCommand(fallbackMethod=......
  • 简单的整数计算器
    //简单的整数计算器----堆栈的应用作者:秒大刀完成日期:2004-10-07这是一个将中序表达式变成后序表达式,并按照后序表达式进行整数四则运算是的程序mystak.h      计算器中的一个特殊堆栈,其中push()函数可以保证中序表达式->后序表达式过程中运算优先级别的合理性mystack.cpp......
  • 正则在字符串中的简单应用
    1'''2正则表达式的方法3'''45importre#0.导入正则模块67'''81.使用re.search()方法进行搜索匹配91.预编译正则表达式模式:如果你需要多次使用同一个正则表达式模式,建议使用re.compile()方法预先编译该模式(#预编译正则表达式模式regex=re......