下のリンクから過去の佐々木のチーム制作時のゲームが遊べる。
EscapeRoomHit & BlowをJavaで再現したった(未完成)
import java.util.Arrays;
import java.util.Scanner;
public class HitAndBlow {
public static void main(String[] args) {
int hit = 0;
int blow = 0;
int turnCount = 1;
int[] hits = { 3, 2, 5, 4 };
System.out.println("【Hit & Blow】");
System.out.println("答えの数字4桁全てHitすれば勝利!!");
System.out.println("答えの4桁の数字は0~9まで、全て違う数字です。");
System.out.println("---------------------------------------------");
System.out.println("例:答えが【1,2,3,4】、解答が【1,2,4,5】となっている場合");
System.out.println("1,2は答えの桁と数字が合っているので「Hit」");
System.out.println("4は桁は違うが答えに含まれた数字なので「Blow」");
System.out.println("5は桁が合ってないどころか答えにも含まれてないのでハズレ。");
System.out.println("結果は「Hit:2 Blow:1」となる。全てHitさせたらクリア!!");
System.out.println("---------------------------------------------");
System.out.println("ゲーム開始!!");
do {
System.out.println(turnCount + "ターン目");
// 答えの予想を入力
int[] answers = inputAnswers(hits.length);
// Hit、Blowの判定
for (int i = 0; i < answers.length; i++) {
for (int j = 0; j < hits.length; j++) {
if (answers[i] == hits[j]) {
if (i == j) {
hit++;
}else {
blow++;
}
break;
}
}
}
// 結果表示
System.out.println(Arrays.toString(answers));
System.out.println("Hit:" + hit + " Blow:" + blow + "\n");
// ターン終了処理
if (hit == 4)
break;
hit = 0;
blow = 0;
turnCount++;
} while (true);
System.out.println("全Hitです!ゲームクリア!!");
}
public static int[] inputAnswers(int digit) {
int[] answers = new int[digit];
for (int i = 0; i < digit; i++) {
System.out.print((i + 1) + "桁目を入力>");
answers[i] = new Scanner(System.in).nextInt();
}
return answers;
}
}