package class04;
// 공유 자원을 통한 모래성게임
import java.util.Random;
class Person {
String name; // 멤버변수 , 고유한값
static int sand = 100; // 클래스변수 , 공유자원!!
boolean game() { // main 문단에 있는 무한루프를 종료조건을 끊어주는 T/F
Random random = new Random();
int num = random.nextInt(20) + 1;
System.out.println(name + "님이 " + num + " 가져갑니다..");
sand -= num;
System.out.println("남은 모래: " + sand);
System.out.println();
if (sand <= 0) {
System.out.println(name + "님, 게임오버!");
return true;
}
return false;
}
Person(String name) {
this.name = name;
}
}
public class Test08 {
public static void main(String[] args) {
Person[] p = new Person[3]; // int[] arr=new int[3];
// 객체를 담아야 하기 때문에, 객체배열, 안에 요소가 객체인 것!
p[0] = new Person("홍길동"); // arr[0]=10;
p[1] = new Person("아리"); // arr[1]=20;
p[2] = new Person("티모"); // arr[2]=30;
int i = 0;
while (true) {
if (p[i].game()) { // 1회전 하면서 누가 true(게임오버)를 만나는지 구하는 로직
break; // true를 만나면 break;
}
i++;
if (i == p.length) { // 만약에 1회전을 했는데 true(게임오버)를 만난 사람이 없다면, i=0으로 바꿔서 다시 0번인덱스에 있는 사람부터 다시 구하기로직
i = 0;
}
}
}
}