

package pad;
import java.util.Scanner;
public class Pad {
public static void main(String[] args) {
new Byul();
}
}
class Byul {
private final String[][] data = { { "ESTJ", "엄격한 관리자" }, { "ESTP", "모험을 즐기는 사업가" }, { "ESFJ", "사교적인 외교관" },
{ "ESFP", "자유로운 영혼의 연예인" }, { "ENTJ", "타고난 리더" }, { "ENTP", "뜨거운 논쟁을 즐기는 변론가" }, { "ENFJ", "선도자" },
{ "ENFP", "재기발랄한 활동가" }, { "ISTJ", "청렴결백한 논리주의자" }, { "ISTP", "만능 재주꾼" }, { "ISFJ", "용감한 수호자" },
{ "ISFP", "호기심 많은 예술가" }, { "INTJ", "용의주도한 전략가" }, { "INTP", "논리적인 사색가" }, { "INFJ", "통찰력 있는 선지자" },
{ "INFP", "중재자" } };
private final String[] questions = { "1. 나는 외향적이다.\n2. 나는 내향적이다.", "1. 나는 현실적이다.\n2. 나는 이상주의자다.",
"1. 나는 합리성을 우선시한다.\n2. 나는 인간 관계를 우선시한다.", "1. 나는 체계적인 편이다.\n2. 나는 즉흥적인 편이다." };
private Scanner sc;
private boolean[] result;
Byul() {
this.sc = new Scanner(System.in);
this.result = new boolean[4];
this.main();
this.sc.close();
}
private void main() {
System.out.println(this.getTitle());
try {
System.in.read();
} catch (Exception e) {
}
System.out.println(this.getResult());
}
private String getResult() {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 4; i++) {
System.out.println(this.questions[i]);
int input = this.input();
this.result[i] = (input == 1);
switch (i) {
case 0:
sb.append((this.result[i]) ? "E" : "I");
break;
case 1:
sb.append((this.result[i]) ? "S" : "N");
break;
case 2:
sb.append((this.result[i]) ? "T" : "F");
break;
case 3:
sb.append((this.result[i]) ? "J" : "P");
break;
}
}
int index = -1;
for (int i = 0; i < this.data.length; i++) {
if (sb.toString().equals(this.data[i][0])) {
index = i;
break;
}
}
String result = sb.toString();
sb.setLength(0);
sb.append("나는 [ " + result + " ]다.\n");
sb.append(this.data[index][1] + "\n");
return sb.toString();
}
private String getTitle() {
StringBuilder sb = new StringBuilder();
sb.append("************************\n\n");
sb.append(" 간이 MBTI 검사 v 1.0\n\n");
sb.append("\tdesigned by Byul\n\n");
sb.append("************************\n");
sb.append("[ Enter를 눌러서 시작 ]");
return sb.toString();
}
private int input() {
return this.sc.nextInt();
}
}
댓글
댓글 쓰기