hyeonga_code

Java_로또 번호 랜덤 뽑기 코드 작성 본문

Java

Java_로또 번호 랜덤 뽑기 코드 작성

hyeonga 2023. 10. 29. 06:59
반응형


1) 로또 수 6개 구하기
          - 1 - 45 까지의 수 중 6개 중복 되면 안됨
=====

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
import java.util.*;
 
public class Ex_0318 {
    public static void main(String[] args) {            
        int[] ro = new int[6];
        for(int i=0; i<ro.length++i) {
            // 
            ro[i] = (int)(Math.random()*45)+1;
            for(int j=0; j<i; ++j) {
                // j번 째 자리 수가 중복인지 확인
                if (ro[i] == ro[j]) {
                    // 담겨있는 수와 방금 담은 값이 일치하면
                    --i;
                    // i를 하나 뺌
                    break;
                    // for 문으로 돌아감
                    // i가 하나 빠졌으므로 방금 뽑아온 임의의 수를 다시 뽑는 상황이 됨
                }
            }
        }
        for(int i=0; i<ro.length-1++i) {
            System.out.print(ro[i] + ", ");
        }
        System.out.println(ro[ro.length-1]);
    }
}


2) for 문으로 작성하기
===== 

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
58
59
60
61
62
import java.util.*;
 
public class Ex_0318 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
 
        int[] ro = new int[6];
        for (int i = 0; i < ro.length++i) {
            // 
            ro[i] = (int)(Math.random() * 45+ 1;
            for (int j = 0; j < i; ++j) {
                // j번 째 자리 수가 중복인지 확인
                if (ro[i] == ro[j]) {
                    // 담겨있는 수와 방금 담은 값이 일치하면
                    --i;
                    // i를 하나 뺌
                    break;
                    // for 문으로 돌아감
                    // i가 하나 빠졌으므로 방금 뽑아온 임의의 수를 다시 뽑는 상황이 됨
                }
            }
        }
 
        int[] my = new int[6];
        // 입력 받을 숫자 배열 생성
        for (int i = 0; i < 6++i) {
            System.out.printf("%d'st number: ", i + 1);
            my[i] = in.nextInt();
            // 6개의 숫자 입력 받음
        }
 
        int su = 0;
        // 일치하는 횟수
        for (int i = 0; i < ro.length++i) {
            // 컴퓨터의 배열 안의
            for (int j = 0; j < my.length++j) {
                if (ro[i] == my[j]) {
                    ++su;
                }
            }
        }
 
        System.out.print("Com's number: ");
        for (int i = 0; i < ro.length - 1++i) {
            System.out.print(ro[i] + ", ");
        }
        System.out.println(ro[ro.length - 1]);
 
 
        System.out.print("My number: ");
        for (int i = 0; i < my.length - 1++i) {
            System.out.print(my[i] + ", ");
        }
        System.out.println(my[my.length - 1]);
        if (su > 0) {
            System.out.printf("%d matches \n", su);
        }
        else {
            System.out.printf("No match \n");
        }
    }
}


3) while 문으로 작성하기
=====

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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
import java.util.*;
 
 public class Exam_15 {
     public static void main(String[] args) {
         Scanner in = new Scanner(System.in);
         int[] arr = new int[6];
 
         for (int i = 0; i < arr.length++i) {
             arr[i] = (int)(Math.random() * 45+ 1;
             for (int j = 0; j < i; ++j) {
                 if (arr[i] == arr[j]) {
                     --i;
                     break;
                 }
             }
         }
 
         int[] select = new int[6];
         for (int i = 0; i < select.length++i) {
             while (true) {
                 System.out.print(i + 1 + "번째 수 : ");
                 select[i] = in.nextInt();
                 if (select[i] >= 1 && select[i] <= 45) {
                     break;
                 }
             }
             for (int j = 0; j < i; ++j) {
                 if (select[i] == select[j]) {
                     --i;
                     break;
                 }
             }
         }
 
         int co = 0;
         for (int i = 0; i < 6++i) {
             for (int j = 0; j < 6++j) {
                 if (arr[i] == select[j]) {
                     ++co;
                     break;
                 }
             }
         }
 
         System.out.print("컴퓨터수 : ");
         for (int i = 0; i < arr.length - 1++i) {
             System.out.print(arr[i] + " , ");
         }
         System.out.println(arr[arr.length - 1]);
         System.out.print("입력하신 수 : ");
         for (int i = 0; i < select.length - 1++i) {
             System.out.print(select[i] + " , ");
         }
         System.out.println(select[select.length - 1]);
         System.out.println("맞춘갯수 : " + co);
     }
 }
 
 
 import java.util.*;
 
 public class Ex_0319 {
     public void main(String[] args) {
         Scanner in = new Scanner(System.in);
         int[] ro = new int[6];
 
         for (int i = 0; i < ro.length++i) {
             ro[i] = (int)(Math.random() * 45+ 1;
             for (int j = 0; j < i; ++j) {
                 if (ro[i] == ro[j]) {
                     --i;
                     break;
                 }
             }
         }
 
         int[] my = new int[6];
         for (int i = 0; i < my.length++i) {
             while (true) {
                 System.out.print(i + 1 + "st number: ");
                 my[i] = in.nextInt();
                 if (my[i] >= 1 && my[i] <= 45) {
                     break;
                 }
             }
             for (int j = 0; j < i; ++j) {
                 if (my[i] == my[j]) {
                     --i;
                     break;
                 }
             }
         }
 
         int co = 0;
         for (int i = 0; i < 6++i) {
             for (int j = 0; j < 6++j) {
                 if (ro[i] == my[j]) {
                     ++co;
                     break;
                 }
             }
         }
 
         System.out.print("Com's number: ");
         for (int i = 0; i < ro.length++i) {
             if (i == ro[ro.length])
                 System.out.println(ro[5]);
             else
                 System.out.print(ro[i] + ", ");
         }
         System.out.print("My number: ");
         for (int i = 0; i < my.length++i) {
             if (i == my[my.length])
                 System.out.println(my[5]);
             else
                 System.out.print(my[i] + ", ");
         }
         System.out.println("Matches: " + co);
     }
 }
반응형