私のコードでは少し問題があります。私はスキャナの2つの位置と配列の位置を一致させようとしています。それは動作しますが、問題は、コードが数値を2度印刷していることです。どうすればこの問題を解決できますか? 2つの要素が同じ場合は、プリントステイを表示する必要があります。私はすでに同じ質問を見つけようとしましたが、見つけられませんでした。JAVA配列の一致場所
import java.util.Scanner;
public class memory {
int[] memoryGeheugen = {1, 3, 1, 4, 3, 5, 2, 5, 2, 4};
String sterretjes = "*";
boolean dubbel = false;
Scanner scan = new Scanner(System.in);
public void run() {
System.out.println("voer de cijfers in positie 1");
int raden1 = scan.nextInt();
System.out.println("voer de cijfer in positie 2");
int raden2 = scan.nextInt();
for (int i = 0; i < memoryGeheugen.length; i++) {
if (memoryGeheugen[i] != memoryGeheugen[raden1]){
System.out.print(sterretjes);
}
else if(memoryGeheugen[i] == memoryGeheugen[raden1]&&memoryGeheugen[i]==memoryGeheugen[raden2]) {
System.out.print(memoryGeheugen[raden1]);
System.out.print(memoryGeheugen[raden2]);
}
}
}
public static void main(String[] args) {
new memory().run();
}
出力:あなたのコードに誤りがない
voer de cijfers in positie 1:
1
voer de cijfer in positie 2:
4
*33**33*****
プログラムの目的は何ですか? –
私はメモリと呼ばれるゲームを作ろうとしています。あなたはゲームに勝つためにすべてのペアを推測する必要があります。そしてもしあなたがペアを推測しなかったなら、数字は隠れて戻ってくる。これまでのところ、私はこのステップをステップごとに実行しようとしていますが、部分的にしか成功しませんでした。 – user7418776