Java 예제: 369 시뮬레이션
3.6.9 게임 시 언제 ‘짝’(박수)을 쳐야되는지 알아보는 시뮬레이션 프로그램
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
import java.util.Scanner;
public class Samyukgu {
public static void main(String[] args) {
// 3, 6, 9가 포함된 숫자는 다 '짝'으로 표시
// 33: 짝짝
try(Scanner s = new Scanner(System.in);){
String[] players = {"철수", "영희", "길동", "한무", "두루",
"갑자", "하나", "을동", "길수", "애리"};
System.out.print("☞ 3 6 9 시뮬레이션, 총 몇 번까지? >> ");
int totalNum = Integer.parseInt(s.nextLine());
System.out.print("☞ 게임에 참여하는 인원수? (10명까지 가능) >> ");
int totalPlayerNum = Integer.parseInt(s.nextLine());
if(totalPlayerNum <= 0 || totalPlayerNum >= 11) {
System.err.println("인원수는 1 ~ 10 사이에서 입력해주세요.");
System.exit(1);
}
int playerCount = 0;
for(int i=1; i <= totalNum; i++ ) {
char[] tempArray = String.valueOf(i).toCharArray();
// 숫자를 쪼개 char 배열에 저장
int sygCount = 0;
for(int j=0; j < tempArray.length; j++) {
if(tempArray[j] == '3' || tempArray[j] == '6'
|| tempArray[j] == '9') {
sygCount++; // 쪼갠 숫자 각각에 3, 6, 9가 있는 경우 그 개수를 카운트
}
}
if(playerCount == totalPlayerNum) {
playerCount = 0;
}
System.out.print(players[playerCount++] + ": ");
if (sygCount == 0) {
System.out.println(i);
} else {
for(int k=1; k <= sygCount; k++)
// i에 3, 6, 9가 있는 경우 그 개수만큼 '짝'을 표시함
System.out.print("짝");
System.out.println();
}
}
}catch(Exception e) {
e.printStackTrace();
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
☞ 3 6 9 시뮬레이션, 총 몇 번까지? >> 40
☞ 게임에 참여하는 인원수? (10명까지 가능) >> 10
철수: 1
영희: 2
길동: 짝
한무: 4
두루: 5
갑자: 짝
하나: 7
을동: 8
길수: 짝
애리: 10
철수: 11
영희: 12
길동: 짝
한무: 14
두루: 15
갑자: 짝
하나: 17
을동: 18
길수: 짝
애리: 20
철수: 21
영희: 22
길동: 짝
한무: 24
두루: 25
갑자: 짝
하나: 27
을동: 28
길수: 짝
애리: 짝
철수: 짝
영희: 짝
길동: 짝짝
한무: 짝
두루: 짝
갑자: 짝짝
하나: 짝
을동: 짝
길수: 짝짝
애리: 40
This post is licensed under
CC BY 4.0
by the author.