12. 갬블링 게임을 만들어보자. n명이 게임을 진행한다. 이들의 이름을 키보드로 입력받으며 각 사람은 Person 클래스로 작성하라. 각 사람이 자기 차례에서 <Enter>키를 누르면 3개의 난수가 발생하고 이 숫자가 모두 같으면 승자가 되고 게임이 끝난다. 난수의 범위를 너무 크게 잡으면 3개의 숫자가 일치하게 나올 가능성이 적기 때문에 숫자의 범위는 1~3 까지로 한다.
import java.util.Scanner;
class Person{
private String name;
public Person(String name) {this.name=name;}
public String getName() {return name;}
}
public class twelve {
public static void main(String[]args) {
Scanner sc=new Scanner(System.in);
System.out.print("갬블링 게임에 참여할 선수 숫자>>");
int num=sc.nextInt();
Person []person=new Person[num];
for (int i=0;i<num;i++) {
System.out.print((int)i+1+"번째 선수 이름>>");
person[i]=new Person(sc.next());}
boolean b=true;
while(b==true) {
for(int i=0;i<num;i++) {
Scanner sc1=new Scanner(System.in);
System.out.print("["+person[i].getName()+"]:<Enter>");
sc1.nextLine();
int i1=(int)(Math.random()*3+1);
int i2=(int)(Math.random()*3+1);
int i3=(int)(Math.random()*3+1);
System.out.print("\t"+i1+"\t"+i2+"\t"+i3+"\t");
if((i1==i2)&&(i2==i3)) {
System.out.println(person[i].getName()+"님이 이겼습니다!");b=false;break;
}
else
System.out.println("아쉽군요!");
}
}
sc.close();
}
}
'JAVA > 공부' 카테고리의 다른 글
8. 입출력 스트림과 파일 입출력 (0) | 2021.01.17 |
---|---|
7. 제네릭과 컬렉션 (0) | 2021.01.16 |
5. 상속 (0) | 2021.01.14 |
4. 클래스와 객체 (0) | 2021.01.14 |
3. 반복문과 배열 그리고 예외 처리 (0) | 2021.01.13 |