私はJavaプログラミングの初心者です。今はmastermindというゲームをやっています。
多くの条件があり、色の代わりに数字を使用しています。
この問題を解決する方法がわかりません: if else ステートメントを使用してゲームを実行していますが、解決策が 4444 でユーザー入力が 4444 の場合、出力の回答は間違っています。
このゲームでは、最初の入力はコンピューターで生成されますが、プログラムをテストする必要があるため、自分で数値を設定し、2 番目の入力はプレイヤーの入力です。
ここに私がやったコードがあります:
import javax.swing.JOptionPane;
public class asd {
public static void main (String args[]){
int i,j;
int b=0 ,w=0;
String input[] = new String[4];
input[0] = JOptionPane.showInputDialog("input a digit");
input[1] = JOptionPane.showInputDialog("input a digit");
input[2] = JOptionPane.showInputDialog("input a digit");
input[3] = JOptionPane.showInputDialog("input a digit");
String Uinput[] = new String[4];
Uinput[0] = JOptionPane.showInputDialog("input a digit");
Uinput[1] = JOptionPane.showInputDialog("input a digit");
Uinput[2] = JOptionPane.showInputDialog("input a digit");
Uinput[3] = JOptionPane.showInputDialog("input a digit");
for(i=0;i<4;i++){
for(j=0;j<4;j++){
if(i<4){
if(input[i].equals(Uinput[j])){
if(i==j){
b++;
i++;
j=0;
}else{
w++;
}
}
}
}
}
System.out.println("black = "+b+"\nwhite = "+w);
}
}