1

1 から 10 までの数字を要求するプログラムを作成する必要があります。1 から 10 までの乱数が生成され、推測した数字と表示された秘密の数字で正しく推測できれば、それが出力されます。また、表示された暗証番号で高すぎたり低すぎたりすると出力されるはずです。joptionpaneインスタンス化可能なクラスで行われる計算と比較をメイン クラスで使用する必要があります。elseまた、and if-statementsを使用する必要があります。私はコードを書きましたが、選択した数字に関係なく、推測された数字として0を出力し、間違っていても正しく推測したことを示しています。これが私が書いた2組のコードです。

import javax.swing.JOptionPane;

public class GuessApp{

public static void main(String args[]){
    int guessNum, secretNum, correct, tooHigh, tooLow;

    Guess myGuess;

    myGuess = new Guess();

    guessNum = Integer.parseInt(JOptionPane.showInputDialog(null,"Please enter a number between 1 and 10"));

    myGuess.setGN(guessNum);
    myGuess.compute();
    guessNum = myGuess.getGuessNum();
    secretNum = myGuess.getSecretNum();
    tooHigh = myGuess.getTooHigh();
    tooLow = myGuess.getTooLow();
    correct = myGuess.getCorrect();

    if (guessNum==correct){
        JOptionPane.showMessageDialog(null,"Congratulations your number is"+guessNum+"and the secret number is"+secretNum+"you have won the game");
    }
    else if (tooHigh==guessNum){
        JOptionPane.showMessageDialog(null,"I'm sorry you have guessed too high, your number is"+guessNum+"and the secret number is"+secretNum);
    }
    else if (tooLow==guessNum){
    JOptionPane.showMessageDialog(null,"I'm sorry you guessed too low, your number is"+guessNum+"and the secret number is"+secretNum);
        }
    }

}

public class Guess{

   private int guessNum, correct, tooHigh, tooLow, secretNum;

   public Guess(){
       guessNum = 0;
   }

   public void setGN(int guessNum){
   this.guessNum = guessNum;
   }

   public void setSN(int secretNum){
       this.secretNum = secretNum;
   }

   public void setCT(int correct){
   this.correct = correct;
   }

   public void setTH(int tooHigh){
   this.tooHigh = tooHigh;
   }

   public void setTL(int tooLow){
   this.tooLow = tooLow;
   }

public void compute(){
    guessNum = guessNum;
    secretNum = (int)(Math.random()*((10 - 1) +1)+1);
    if ((secretNum<guessNum)){
        guessNum = tooHigh;
    }
    else if ((secretNum>guessNum)){
        guessNum = tooLow;
    }
    else if ((secretNum==guessNum)){
        guessNum = correct;
    }
}

    public int getGuessNum(){
    return guessNum;
    }
    public int getSecretNum(){
        return secretNum;
    }
    public int getTooHigh(){
        return tooHigh;
    }
    public int getTooLow(){
        return tooLow;
    }
    public int getCorrect(){
        return correct;
    }
}

Javaクラスを始めたばかりなので、これは初めてです。どんな助けでも大歓迎です。前もって感謝します。

4

3 に答える 3