1

基本的に、現在ビルドしている推測ゲームにスコアリング システムを入力したいと考えています。コードは以下のとおりです。現在、ユーザーが正しい数字を推測すると、現在 10 に設定されているスコアが通知されます。私がやりたいことは、スコアを 10 に設定し、推測が正しくないたびに値が 1 ずつ減らされることです。また、ユーザーがゲームをプレイしているときに終了機能を実装するのも困難です。これらのものを私のコードに追加する方法を教えてください。注:私はサーバー上で推測ゲームを行っています。プロトコル部分だけを投稿します。

プロトコル

import java.util.*;

public class KKProtocol {
    int guess = 0, number = new Random().nextInt(100) + 1;
    int score = 0;
    Scanner scan = new Scanner(System.in);


    public String processInput(String theInput) {
        String theOutput = null;

        System.out.println("Please guess the number between 1 and 100.");

        while (guess != number) {
          try {
            if ((guess = Integer.parseInt(scan.nextLine())) != number) {
              System.out.println(guess < number ? "Higher..." : "Lower...");
            }
            else {
              System.out.println("Correct!");
              score = 1;
            }
          }   
          catch (NumberFormatException e) {
            System.out.println("Please enter a valid number! If you want to Quit just say'Goodbye'");
          }   

        }   



        return theOutput;   
    }
}
4

2 に答える 2

1

あなたができること:

if (score > 0 && (guess = Integer.parseInt(scan.nextLine())) != number) {
     System.out.println(guess < number ? "Higher..." : "Lower...");
     score--;
}
...
于 2012-12-17T23:27:19.930 に答える
1

間違った推測でスコアを下げる:

if ((guess = Integer.parseInt(scan.nextLine())) != number) {
  System.out.println(guess < number ? "Higher..." : "Lower...");
  score = score - 1
}

ゲームを終了するには、次のようにします。

boolean gameRunning = true;
while (guess != number && gameRunning) {
  String input = scan.nextLine();
  if (input.toLowerCase().equals("Goodbye")) { // check for goodbye
    gameRunning = false;
  } else {
    try {
      if ((guess = Integer.parseInt(input)) != number) {
        ...

breakステートメントでループを中断することもできます。

于 2012-12-17T23:28:16.017 に答える