猜数游戏(JAVA)

GuessGame.java

package com.wondersgroup.game;

/**
 * 猜数游戏
 * 
 * @author Administrator
 * 
 */
public class GuessGame {
	// 创建3个player对象
	Player p1;
	Player p2;
	Player p3;

	// 启动游戏
	public void startGame() {
		p1 = new Player();
		p2 = new Player();
		p3 = new Player();

		// 用来保存猜测的数字
		int guessp1 = 0;
		int guessp2 = 0;
		int guessp3 = 0;

		// 判断猜测数字是否正确
		boolean p1isRight = false;
		boolean p2isRight = false;
		boolean p3isRight = false;

		// 产生谜底数字
		int targetNumber = (int) (Math.random() * 10);
		System.out.println("产生的谜底数在0-9之间");

		while (true) {

			System.out.println("target number is " + targetNumber);
			// 调用player的guess()方法
			p1.guess();
			p2.guess();
			p3.guess();
			// 取得猜测者猜出的数字
			guessp1 = p1.number;
			System.out.println("player1 guess" + guessp1);
			guessp2 = p2.number;
			System.out.println("player2 guess" + guessp2);
			guessp3 = p3.number;
			System.out.println("player3 guess" + guessp3);
			// 检查是否猜中,如果猜中则去设置猜中的变量
			if (guessp1 == targetNumber) {
				p1isRight = true;
			}
			if (guessp2 == targetNumber) {
				p2isRight = true;
			}
			if (guessp3 == targetNumber) {
				p3isRight = true;
			}
			// 如果有一个或者多个猜中
			if (p1isRight || p2isRight || p3isRight) {
				System.out.println("we have a winner");
				System.out.println("player1 get it?" + p1isRight);
				System.out.println("player2 get it?" + p2isRight);
				System.out.println("player3 get it?" + p3isRight);
				System.out.println("game is over");
				break;
			} else {
				// 如果没有猜中,游戏继续循环
				System.out.println("player have to try again");
			}
		}
	}
}

Player.java

package com.wondersgroup.game;

public class Player {

	//要被猜测的数字
	int number = 0;

	public void guess() {
		number = (int) (Math.random()*10);
		System.out.println("I guess number" + number);
	}

}

GameLaucher.java

package com.wondersgroup.game;

public class GameLaucher {

	public static void main(String[] args) {
		GuessGame guessGame = new GuessGame();
		guessGame.startGame();
	}

}

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个简单的Java猜数游戏的图形界面实现代码: ```java import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GuessNumberGUI extends JFrame implements ActionListener { private JTextField inputField; private JLabel outputLabel; private int randomNumber; private int numGuesses; public GuessNumberGUI() { super("猜数字游戏"); randomNumber = (int) (Math.random() * 100) + 1; numGuesses = 0; JPanel panel = new JPanel(); panel.setLayout(new GridLayout(3, 1)); JLabel promptLabel = new JLabel("输入一个 1 到 100 之间的整数:"); inputField = new JTextField(10); inputField.addActionListener(this); outputLabel = new JLabel("你还没有猜过。"); outputLabel.setHorizontalAlignment(SwingConstants.CENTER); panel.add(promptLabel); panel.add(inputField); panel.add(outputLabel); setContentPane(panel); pack(); setVisible(true); } public void actionPerformed(ActionEvent e) { int guess; String inputString = inputField.getText().trim(); try { guess = Integer.parseInt(inputString); } catch (NumberFormatException ex) { outputLabel.setText("输入必须是一个整数。"); return; } numGuesses++; if (guess == randomNumber) { outputLabel.setText("恭喜你猜对了!你一共猜了 " + numGuesses + " 次。"); inputField.setEnabled(false); } else if (guess < randomNumber) { outputLabel.setText("你猜小了。你已经猜了 " + numGuesses + " 次。"); } else { outputLabel.setText("你猜大了。你已经猜了 " + numGuesses + " 次。"); } inputField.setText(""); } public static void main(String[] args) { new GuessNumberGUI(); } } ``` 这个程序使用了Java的Swing库来创建一个简单的图形用户界面。程序生成一个 1 到 100 之间的随机数,并要求用户输入一个整数来猜测这个随机数。每次用户猜测时,程序会告诉用户他们猜的数字是太大了还是太小了,直到用户猜对为止。程序还会记录用户猜测的次数,并在用户猜对时显示出来。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值