‡π©π» ‡/º Java
[Java] 2λͺ μ΄μ νλ μΌλ°μ κ²μ ꡬννκΈ°
Trudy | μ‘μ°
2023. 11. 23. 20:49
λ¬Έμ
2λͺ μ νλ μ΄μ΄κ° μΌλ°μ κ²μμ νλ€.
νλ μ΄μ΄λ μ λ΅, κ½, νν μ€ νλλ₯Ό κ³ λ₯Έλ€.
νλ μ΄μ΄λ λͺ¨λ μ²μμ 5κ°μ ννΈλ₯Ό κ°κ³ μμνλ€.
νλ μ΄μ΄λ νλμ μ μλ₯Ό ν¨κ» μ¬μ©νλ€.
μ λ΅: ννΈ 1 μ¦κ°, μ μ 1 μ¦κ°
κ½: ννΈ 1 κ°μ
νν: ννΈ 1 κ°μ, μ μ 1 κ°μ
μ μκ° 3μ΄ λλ©΄ κ²μμ μ΄κΈ°κ² λλ€.
λ νλ μ΄μ΄ λͺ¨λ ννΈκ° λ€ λ¨μ΄μ§λ©΄ κ²μμ μ§κ² λλ€.
μ½λ
λ¨Όμ νλ μ΄μ΄μ μ 보λ₯Ό μ μ₯ν Playerν΄λμ°μ κ²μμ μ§νν MixGame ν΄λμ°λ‘ μ½λ νμΌμ λλμλ€.
Player.java μμλ νλ μ΄μ΄μ μ΄λ¦, ννΈ κ°―μ, κ·Έλ¦¬κ³ κ³΅ν΅μ μΈ μ μλ₯Ό μ μ₯νλ€,.
λͺ¨λ μμ±μ privateμΌλ‘ μ€μ ν΄μ£Όμκ³ , κ°κ°μ getκ³Ό setνκΈ° μν getterκ³Ό setterμ ꡬννλ€.
scoreμ λ νλ μ΄μ΄ 곡ν΅μ μΌλ‘ μ¬μ©ν΄μΌνλ―λ‘ μ μ λ³μλ‘ staticμΌλ‘ μ€μ νλ€.
λ, μ λ΅, κ½, νν λ©μλλ₯Ό λ§λ€μ΄μ heartμ scoreμ μ‘°μν΄μ£Όμλ€.
Player.java
package day04.mixgame;
public class Player {
private String name;
private int heart;
private static int score;
public Player(String name) {
this.name = name;
this.heart = 5;
this.score = 0;
}
public String getName() {
return name;
}
public int getHeart() {
return heart;
}
public static int getScore() {
return score;
}
public void jeongdap(){
this.heart += 1;
this.score += 1;
System.out.println("μ λ΅μ
λλ€! ννΈ 1 μ¦κ° (" + this.heart + ") μ μ 1 μ¦κ° (" + getScore() + ")");
}
public void kkwang(){
this.heart -= 1;
System.out.println("κ½μ
λλ€! ννΈ 1 κ°μ (" + this.heart + ")");
}
public void bomb(){
this.heart -= 1;
if(score == 0) score = 0;
else score -= 1;
System.out.println("ννμ
λλ€! ννΈ 1 κ°μ (" + this.heart + ") μ μ 1 κ°μ (" + getScore() + ")");
}
}
MixGame.java
package day04.mixgame;
import java.util.Scanner;
public class MixGame {
public static void main(String[] args) {
//1: μ λ΅, 2:κ½, 3:νν
int[] answer = new int[3];
Player p1 = new Player("Player 1");
Player p2 = new Player("Player 2");
Player[] players = {p1, p2};
//κ²μ μμ
while (p1.getHeart() > 0 || p2.getHeart() > 0) {
//νμΆ μ‘°κ±΄ μΆκ° ( score = 3μΌ λ )
int score = Player.getScore();
if (score == 3) {
System.out.println("===== μ΄κΉ ~~~ =====");
break;
}
Scanner sc = new Scanner(System.in);
for (Player player : players) {
if(player.getHeart() == 0) continue;
//μ λ΅ μμ±
for (int i = 0; i < 3; i++) {
answer[i] = (int) (Math.random() * 3 + 1);
for (int j = 0; j < i; j++) {
if (answer[i] == answer[j]) {
i--;
break;
}
}
}
//νλ μ΄μ΄ μ
λ ₯ λ°κΈ°
System.out.print("["+ player.getName()+ "]" + " κ²μ μμ 1,2,3 μ€ μ
λ ₯νμΈμ ! ");
int guess = sc.nextInt();
int tmp = player.getHeart();
int index = 0;
for (int i = 0; i < 3; i++) {
if (guess == answer[i]) index = i;
}
//μ λ΅ μ²΄ν¬
if (index == 1) {
player.jeongdap();
} else if (index == 2) {
player.kkwang();
} else {
player.bomb();
}
}
}
System.out.println("============κ²μ μ€λ²===========");
}
}