JAVA for, while, break, continue, label 를 이용한 예문
1 2 3 4 5 6 7 8 9 10
2 3 4 5 6 7 8 9 10 1
3 4 5 6 7 8 9 10 1 2
4 5 6 7 8 9 10 1 2 3
5 6 7 8 9 10 1 2 3 4
6 7 8 9 10 1 2 3 4 5
7 8 9 10 1 2 3 4 5 6
8 9 10 1 2 3 4 5 6 7
9 10 1 2 3 4 5 6 7 8
10 1 2 3 4 5 6 7 8 9
for 문 내꺼
int result = 0;
for(int i=1; i<=10; i++) {
for(int j=1; j<=10; j++) {
result = j+i-1;
if(result > 10) {
result = result-10;
System.out.printf("%3d", result);
} else {
System.out.printf("%3d", result);
}
}
System.out.println();
}
for 문 선생님꺼
for(int i=0; i<10; i++) {
for(int j=i; j<10+i; j++) {
System.out.print(j%10 + 1 + " ");
}
System.out.println();
}
-----------------------------------------
int count = 0;
for(int i=0; i<10; i++) {
count += i;
for(int j=0; j<10; j++) {
if(count == 10)
count = 0;
++count;
System.out.print(count + " ");
}
count = 0;
System.out.println();
}
배열로 처리 방법
int[] arr = {1,2,3,4,5,6,7,8,9,10};
int num;
for(int i=0; i<10; i++) {
for(int j=0; j<10; j++) {
System.out.print(arr[j]+ " ");
}
System.out.println();
num = arr[0];
for(int k=0; k<9; k++) {
arr[k] = arr[k+1];
}
arr[9] = num;
}
1 = 1 2 3 4 5
2 = 6 7 8 9 10
3 = 11 12 13 14 15
4 = 16 17 18 19 20
5 = 21 22 23 24 25
int num1 = 1;
int num2 = 1;
while (num1 <= 5) {
System.out.print(num1++ + " = ");
for(int i=1; i<=5; i++) {
System.out.print(num2++ + " ");
}
System.out.println();
}
do while 문을 이용하여, 17을 뺀 1~20의 숫자를 출력해라.
int i=1;
do {
System.out.println(i);
do {
i++;
} while(i==17);
} while(i != 21);
각 과목 130점 이하를 랜덤하게 넣고,
각 과목 100점 이하일 때, 출력되게 하라.
int java, jsp, android;
do {
java = (int)(Math.random()*130);
jsp = (int)(Math.random()*130);
android = (int)(Math.random()*130);
} while (java > 100 || jsp > 100 || android > 100);
System.out.println("JAVA : " + java + "\nJSP : " + jsp + "\nAndroid : " + android);
Break : 반복문을 강제로 나갈 때, 사용
Continue : 반복문에서 특정 문장이나, 여러 문장들을 건너뛰고 다시 조건을 확인해서 실행할 때, 사용
Break
int n=1;
while (true) { // 무한 반복 1>0도 가능, !true, false는 불가
System.out.println(n);
n++;
if(n>10) // if 구문이 없으면, 무한 반복.
break;
}
Continue
for문
for(int j=1; j<=20; j++) {
if(j%3==0) { // 3의 배수
continue;
// 3의 배수는 다시 조건을 판단하여 실행, 아래 print()로 가지 않음.
}
System.out.print(j + " ");
}
while문
int n=0;
while(n<20) {
n++;
if(n%3==0) {
continue;
}
System.out.print(n+" ");
}
break label & continue label 문
특정 반복 문에 label을 붙여서 한번에 두개 이상의 반복문을 빠져나올 수 있게 하는 제어문.
outer : for(int i=1; i<=2; i++) {
for(int j=1; j<=10; j++) {
if (j%3==0) {
break outer;
// outer라는 label이 붙은 반복문으로 빠져나감.
}
System.out.print(j + " ");
}
System.out.println(" hi ");
}
출력
1 2
3의 배수일 때, if 문의 break outer;로 인해,
outer 인 for문을 벗어나서 hi가 출력이 되지 않는다.
int n=0;
outer : while(true) {
if(n>=10) break;
while(true) {
n++;
if(n%3==0) {
System.out.println("만남 "+ n);
continue outer;
}
System.out.println(n);
}
}
1
2
만남 3
4
5
만남 6
7
8
만남 9
10
11
만남 12