본문 바로가기
CLASS/JAVA

#3-2 / 반복문

by eungSe__ 2024. 5. 2.

javascript랑 똑같음

전역변수,지역변수로 인하여 반복문에 대한 결과값 출력 여부 달라짐

-> 전역변수로 선언 시 밖에서 못쓰는 경우가 있기때문에 밖에서 선언해주는게 좋음

⚡ for문 , break
package oop;

//반복문 for문
public class oop8 {

	public static void main(String[] args) {
		oop8_for op8 = new oop8_for();
		op8.abc();

	}

}

class oop8_for {
	
	public void abc() {
		int f;
		for(f=1; f<=10; f++) {
			// System.out.println(f);
		}
		
		int a;
		for(a=5; a>=1; a--) {
			// System.out.println(a);
		}
		
		//구구단 8단
		int g;
		int g1 = 8;
		for(g=1; g<=9; g++) {
			// System.out.println(g1 + " * " + g + " = " + g1*g);
			System.out.printf("%s x %s = %s %n",g1,g,g1*g); //%n : 줄바꿈
		}
        
		int b;
		for(b=1; b<=10; b++) {
			System.out.println(b);
			
			//반복문 강제 종료, 모든 반복문에 다 있음 ex)게시물 노출 갯수 정할때..?
			break; 
		}
        
		//응용문제 2. 반복문과 조건문 결합
		// 1~20숫자 중 5의 배수만 출력 + 10이상일때 강제 정지
		int c;
		for(c=1; c <= 20; c++) {
			if(c%5 == 0) {
				//System.out.println(c);
				if(c>=10) {
					break;
				}
			}
		}
		
		
	}
	
}
⚡ continue 사용법
조건문 없이는 작동x / 반복문 아래 작성
int e;
for(e=1; e<=20; e++) {
    if(e==10) { 
    	//해당 코드가 실행시 반복문 아래의 코드는 실행 안됨
        continue;
    }
    System.out.println(e); //10 빼고 다 출력(건너뜀)
}
⚡ while문
package oop;
public class oop9 {

	public static void main(String[] args) {
    
		int w=1; //시작값
		while(w <= 10) { //범위값
			//System.out.println(w);
			w++; //증가 or 감소
		}
        
		/*-------------------------*/
		
		//if문 + while문
		//응용문제
		//while문과 if문을 이용하여 구구단 6단을 출력합니다
		//단, 40이상되었을 경우 강제로 반복문이 종료됩니다
		
		int a=1;
		int a1=6;
        
		//전역변수로 선언 시 밖에서 못쓰는 경우가 있기때문에 밖에서 선언해주는게 좋음
		int sum = 0;
		while(a <= 9) {
			sum = a1*a; //int sum = a1*a;
			if(sum >=40) {
				break;
			}
			System.out.printf("%s * %s = %s%n",a1,a,sum);
			a++;
		}

	}

}
⚡ 무한반복
//for문 무한루프 + break
int d;
for(d=1; ; d++) {
    System.out.println(d);
    if(d>=50) {
        break;
    }
}

        
//while문 무한루프
int cc=1;
while(true) { //false입력시 아예 작동x
    System.out.println(cc);
    cc++;
}


//do~while문 무한루프
int d=1;
do {
    System.out.println(d);
    d++;
}while(true);
⚡ 응용(무한루프)
		//응용문제1.
		//무한루프를 이용하여 50이하까지만 반복문이 작동 되면 1부터 모든 합계 출력 
		//단, while문 사용
		
		int a=1;
		int sum_a = 0;
		while(true) {
			sum_a += a;
			if(a>=50) {
				break;
			}
			a++;
		}
		//System.out.println(sum_a);
		
		//응용문제2.
		//무한루프 범위 1~~~ 중 70~79 총 합계치
		//단, for
		int b;
		int sum_b = 0;
		for(b=1; ; b++) {
			if(b>=70 && b<=79) {
				sum_b += b;
			}else if(b>79) {
				break;
			}
		}
		//System.out.println(sum_b);
		
		//응용문제2-다른 풀이
		int c=1;
		int sum_c = 0;
		do {
			if(c>=70) {
				sum_c += c;
				if(c>=79) {
					break;
				}
			}
			c++;
		}while(true);
		
		System.out.println(sum_c);
⚡ 더블반복문
int a,b;
for(a=2; a<=9; a++) { //2~9까지 돌아가는 큰 반복문
    for(b=1; b<=9; b++) { //1~9까지 돌아가는 작은 반복문
        //System.out.printf("%s x %s = %s %n",a,b,a*b);
        //System.out.println(a+"x"+b +"=" + a*b);
    }
}

int c=5;
//int cc=1; X
//작은 반복문 초기값은 큰 반복문 안에서 선언해줘야함(==do~while문)
 //밖에 작성시 cc값이 다시 1로 초기화가 되기때문에
while(c<=7) {
    int cc=1;
    while(cc<=9) {
        System.out.println(c+"*"+cc+"="+c*cc);
        cc++;
    }
    c++;
}

 

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

#4-1 / Scanner + 반복문  (0) 2024.05.03
#3-3 / library(Scanner)  (0) 2024.05.02
#3-1 / 외부class,if문  (0) 2024.05.02
#2-2 / JAVA - OOP 🔥  (0) 2024.04.30
#2-1 / 로그인 form(javascript)  (0) 2024.04.30