数字游戏设计

项目介绍

猜数字游戏是一个简单,有趣的小游戏。游戏者通过输入一个指定区间的数字,与系统产生的随机数 进行对比,然后输出相应的结果。
游戏运行时产生一个 0-1000 之间的随机整数,要求用户从控制台输入数字,若输入的数字比产生的 数字小,则输出:“有点小了,需要再大一点!”;若输入的数字比产生的数字大,则输出:“有点大了,需要再小一点!”, 若输入的数字和产生的数字相等,则输出:“恭喜您猜对了!”然后退出程序。成功的结果如下图:
在这里插入图片描述
用户要是猜了 10 次还未猜对,则输出:“输入有误,请重新输入数字!”然后退出程序如下图:
在这里插入图片描述

项目需求分析

通过项目的任务和要求,我们将项目的具体需实现的功能分析如下:

  1. 游戏运行时产生一个0-1000之间的随机整数,要求用户从控制台输入数字,最多可输入10次。
  2. 若输入的数字比产生的数字小,则输出:“有点小了,需要再大一点!”; 若输入的数字比产生的数 字大,则输出:“有点大了,需要再小一点!”,若输入的数字和产生的数字相等,则输出:“恭喜您猜对了!”然后退出程序;
  3. 若用户猜了10次还未猜对,则输出:“输入有误,请重新输入数字!”然后退出程序。

项目设计思路

了解需求后,接下来我们分析一下项目的设计思路:

  1. 首先我们要借助 Java API 提供的 Random 类来产生一个 1 到 1000 的随机整数,并提示用户输入一个 1-1000 随机整数。
  2. 然后定义一个 int count = 10,编写 while (–count >= 0) {}方法用来表示程序最多可猜测 10 次。循环 体内通过 System.in 从控制台输入,并通过 nextLine()方法读取下一行,等待用户输入一个文本行并且回车。
  3. 接下来通过 if 语句将输入数与随机数进行比较,若输入的数字比产生的数字小,则输出:“有点小了,需要再大一点!”;若输入的数字比产生的数字大,则输出:“有点大了,需要再小一点!”,若输入的数字和产生的数 字相等,则输出:“恭喜您猜对了!”并通过 break 语句跳出循环,游戏结束。
  4. 最后为了防止用户输入的不是数字,需要将输入的数字转换为整数,并通过 try{}catch(){}语句对判 断方法进行异常控制,如果输入的不是数字,则系统会输出“输入有误,请输入数字!”。当系统循环 10 次以后,仍然没有猜中,则控制台会输出"太笨啦,下次再来吧!"
    代码如下(示例):
package m1014;
import java.util.Random;
import java.util.Scanner;

public class Guess {
	public static void main(String[] args) {
		Guess g = new Guess();
		g.guess();
	}

	public void guess() {
		Random r = new Random();
		int i = r.nextInt(1000); // 产生0~1000的随机整数
		System.out.println("请输入一个0-1000之间的整数:");
		int count = 10;
		while (--count >= 0) {
			Scanner p = new Scanner(System.in);// 键盘录入
			String s = p.nextLine();
			// 异常控制,防止用户输入的不是数字
			try {
				int num = Integer.parseInt(s);
				if (num == i) {
					System.out.println("恭喜您猜对了!");
					break;
				} else if (num < i) {
					System.out.println("有点小了,需要再大一点!");
				} else {
					System.out.println("有点大了,需要再小一点!");
				}
			} catch (Exception e) {
				System.out.println("输入有误,请重新输入数字!");
			}
		}
		if (count <= 0) {
			System.out.println("太笨啦,下次再来吧!");
		}
	}
}

项目总结

本项目可以通过使用ramdom模块来进行有趣的数学设计,而且还能加强我们的动手能力,让大家可以更深层次地认识到 Java 及其强大的 功能。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值