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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
 
import java.util.Scanner;
import java.util.Calendar;
 
 
class for
 
{
    public static void main(String[] args) 
    {
 
 
        //반복문
        // - 공통점 :
 
        /*
            for (초기식;조건식;증감식)     //3개의 문장이 들어있는
             {
                실행문;                     //반복코드
            }
        */
        
        //m1();
        //m2();
        //m3();
        //m4();
        //m5();
        //m6();
        m7();
 
    }
 
 
    public static void m7()
    {
        //break, continue    
        //break : 자신이 포함된 제어문을 탈출(if문 제외)
        //    -m6의 응용3과 유사역할
        //continue : 반복문의 처음으로 돌아가라~, 루프의 일부만 제외하고 건너뛸 때 사용.
 
        
        for (int i=1; i<11; i++)
        {
            if (i == 5)                        //i가 5면 브레이크
            {
                //break;  //for문 탈출        //출력 : 1,2,3,4
                continue;                    //출력 : 1~10중 5가 빠져있음.,
            }
            System.out.println(i);
        }
 
        //ask]선생님-> 학생상담하는데 ->break) 10번부터는 내일하자.. 스톱!
        //                                continue) 결석한 10번, 15번은 건너뛰자..
        for(int i=1; i<31; i++)
        {
            if (i == 10)
            {
                break;
            }
 
            if (i == 10 || i == 15)
            {
                continue;
            }
            System.out.printf("%d번 학생 상담중..\n", i);
        }
    }
 
 
 
 
 
    public static void m6()
    {
        //무한루프
        /*
        for (int i=0; 1<10; i--)
        {
            System.out.println("안녕~");
        }
        */
        
        /*응용]1
        for (;;)
        {
            System.out.println("하하하~");
        }
        */
 
        /*
        //응용]2
        //for (int i=0; true; i++)            //true는 빼고 써도 된다.
        for (int i=0; ; i++)
        {
            System.out.println(i);
        }
        */
 
        //응용]3. 특정상황에서 튀어나가는 루프
        boolean loop = true;
 
        for (int i=0; loop; i++)
        {
            System.out.println(i);
 
            Calendar c = Calendar.getInstance();
            if (c.get(Calendar.SECOND) == i) //초 가져오기, 0~59중에 하나가 반환
            {
                loop = false//루프탈출
            }
        }
    }
 
 
 
 
 
    public static void m5()
    {
        //ask] 사용자가 입력한 10개의 숫자의 합을 구하시오
        Scanner scan = new Scanner(System.in);
 
        int sum = 0 ;                    //2. 누적변수 만들기
        
        for (int i=0; i<10; i++)        //1. 
        {
            System.out.print("숫자 : ");
            int n = scan.nextInt();
            sum += n;
        }
        System.out.print(sum);
    }
 
 
 
 
 
    public static void m4()
    {
        //ask] 누적값 구하기
        //1~10까지의 합
        //1~100
        //27~87 
 
        // 1 + 2 + 3 + 4 ... + 9 +10
 
        int sum = 0//누적 변수 (0으로 초기화)
 
        //for (int i=1; i<11; i++)
        for (int i=2; i<101; i+=2)    //출력] 홀수의 합 : 2550
        {
            sum += i;
        }
        System.out.println(sum);
 
    }
 
 
 
 
 
    public static void m3()
    {
        //ask] 구구단 3단 출력하기            //-> 패턴을 파악해야 한다.
        // 3 x 1 =3
        // 3 x 2 =6
        // 3 x 1 =9
        // ..
        // 3 x 9 =27
 
        for (int i=1; i<10; i++)            //i<10 -> 9번 돌려야., i++ -> 증감치는 1씩.,
        {
            System.out.printf("3 x %d = %2d\n", i, 3 * i);  //%2 :오른쪽정렬
        }
    }
 
 
 
 
    
    public static void m2()
    {
        //int i : 루프문(loop) -> 루프변수
 
        //루프 변수의 역할
        //1. 반복문의 실행 횟수 결정
        //2. 루프 변수의 값을 사용
 
 
        //요구사항] 숫자 1~10까지 출력
 
        int n = 1;                        //1을 선언
        for (int i=0; i<10; i++)
        {
            //System.out.println(n);
            //n = n + 1;                //n에 대해 1씩 누적시키는 작업을 해줘야.,
            //2. n = n += 1;
            //3. n++;
            System.out.println(i);
        }
        
        //응용]1.
        for (int i=1; i<11; i++)      //i<11 -> 횟수가 10이면 만족하고 11이되면 빠져나가게
        {
            System.out.println(i);
        }
        
        
        //응용]2.
        for (int i=1; i<11; i+=2)      //i+=2 -> 2씩증가 -> 홀수출력
        {
            System.out.println(i);
        }
        
        //응용]3.
        for (int i=10; i>0; i--)      //i-- -> 1씩감소
        {
            System.out.println(i);
        }
 
 
    }
    
 
    
    
    public static void m1()
    {
        
        //반복문Ex]
        
        //지역변수는 선언 위치에 민감하다, 충돌나지 않게 주의!
        
        int n;
        if (true)
        {
            n=10;
            System.out.println(n);
        }
        System.out.println(n);
 
        //int n;
        for (int i=0; i<10; i++)    //?괄호가 어떻게 10번을 실행하게 만드는가?
                                    //초기값i=0, i가10보다 작을때까지, 1씩 증가한다
        {
            System.out.println("안녕하세요~");    
        }
        //System.out.println(i);
 
    }
 
}
 
cs


'WEB > JAVA' 카테고리의 다른 글

STRING1  (0) 2015.05.22
FOR문2  (0) 2015.05.22
SWITCH문  (0) 2015.05.22
IF문  (0) 2015.05.22
날짜&시간2  (4) 2015.05.22

+ Recent posts