자바 개발자 일기 4일차

Shy·2024년 1월 2일

아이티윌

목록 보기
4/22

실습예제 for

예제1


public class Ex01_for_java {

	public static void main(String[] args) {
		// 제어문 _ 반복문(for, while, do~while)
		// switch () {}
		// for ( 초기값설정 ; 실행(종결)조건 ; 증감설정) {실행문}
		// for ( ; ; ) {} //무한반복
		
		System.out.println("*");
		System.out.println("*");
		System.out.println("*");
		System.out.println("---------------");
		
		for (int i = 1; i < 4; i++) {
			System.out.println("*"); // 3번 반복
		}
		System.out.println("---------------");
		for (int i = 1; i <= 5; i++) {
			System.out.println("*****"); // 5번 반복
		}
		System.out.println("---------------");
		
		System.out.println("=== 1부터 10까지 출력===");
		// 반복인자 값을 사용해서 출력
		for (int i = 1; i <= 10; i++) {
			System.out.println(i);
		}
		System.out.println("=== 1부터 10까지 출력===");
		//1부터 10까지의 숫자 출력.
		// 별도 변수(num)값을 사용해서 출력
		int num = 1;
		for (int i = 1; i <= 10; i++) {
			System.out.println(num++);
		}
		System.out.println("---------------");
		// i값이 1부터 10까지 2씩 증가하면서 반복처리
		for (int i = 1; i <= 10; i += 2) {
			System.out.println(i);
		}
		
	}
}

예제2


public class Ex02_for_example {

	public static void main(String[] args) {
		//for (초기값설정; 실행(종결)조건; 증감설정) {}
		//(실습) 1,2,3,4,5를 화면에 출력
		for (int i = 1; i <= 5; i++) {
			System.out.println(i);
		}
		System.out.println("-------------");
		
		//실습 11, 12, 13, 14, 15 화면출력;
		for (int i = 11; i <= 15; i++) {
			System.out.println(i);
		}
		System.out.println("-------------");
		
		//실습 1, 3, 5, 7, 9 화면출력;
		for (int i = 1; i <= 10; i=i+2) {
			System.out.println(i);
		}
		System.out.println("-------------");
		
		//실습 2, 4, 6, 8, 10 화면출력;
		for (int i = 2; i <= 10; i=i+2) {
			System.out.println(i);
		}
		System.out.println("-------------");
		
		//실습 5, 4, 3, 2, 1 화면출력;
		for (int i = 5; i >= 1; i=i-1) {
			System.out.println(i);
		}
		System.out.println("=============");

	}

}

public class Ex05_for_exam {

	public static void main(String[] args) {
		// 문제 1~10까지의 숫자 중 짝수 출력
		// 2로 나눈 나머지가 0인 숫자는 짝수이면서 2의 배수
		for (int i = 1; i<= 10; i++) {
			if (i % 2 ==0) {
				System.out.println("짝수(2의배수) : " + i);
			}
		}
		System.out.println("-------------------");
		
		// (실습) 1~10까지의 숫자 중 3의 배수인 숫자를 출력
		for (int i = 1; i <= 10; i++) {
			if (i % 3 ==0) {
				System.out.println(i);
			}
		}
		System.out.println("-------------------");
		
		// (실습) 900~1000까지의 숫자 중 17의 배수인 숫자를 출력
		for (int i = 900; i <= 1000; i++) {
			if (i % 17 ==0) {
				System.out.println(i);
			}
		}
		
		System.out.println("-------------------");
		// (실습) 2000~3000 까지의 숫자 중 19의 배수인 숫자를 출력
		for (int i = 2000; i <= 3000; i++) {
			if (i % 19 == 0) {
				System.out.println(i);
			}
		}
		System.out.println("====================");

	}

}

예제3


public class Ex03_for_sum {

	public static void main(String[] args) {
		// 문제 : 1~10까지의 합계를 구하시오.(for, 화면출력)
		int sum = 0;
		for (int i = 1; i <= 10; i++) {
			sum = sum + i;
			if (i == 10) {
				System.out.println(sum);
			}
		}
		
		System.out.println("===========");
		// 실습 1~10까지의 숫자중에 짝수 출력(2, 4, 6, 8, 10);
		// 처리하는 숫자가 짝수값인지 팔별해서 짝수면 출력 
		for (int i = 1; i <= 10; i++) {
			if (i%2 == 0) {
				System.out.println(i);
			}
		}
		System.out.println("===========");
		// 실습 1~10까지의 숫자중에 홀수 출력(1, 3, 5, 7, 9);
		for (int i = 1; i <= 10; i++) {
			if (i%2 != 0) {
				System.out.println(i);
			}
		}
		

	}

}

break, continue

continue

continue 명령어: 이 명령어는 현재 루프의 나머지 부분을 건너뛰고, 루프의 시작 부분으로 돌아간다. 주로 조건이 만족하지 않을 때 불필요한 코드 실행을 방지하고자 사용된다. 예를 들어, 특정 조건을 만족하는 요소에만 작업을 수행하고 싶을 때 유용하다.

for (int i = 0; i < 10; i++) {
    if (i % 2 == 0) { // 짝수인 경우
        continue; // 다음 반복으로 넘어간다
    }
    System.out.println(i); // 홀수만 출력된다
}

break

break 명령어: break는 현재 루프를 완전히 종료시키는 명령어다. 주로 특정 조건이 충족됐을 때 루프를 빠져나오기 위해 사용된다. 예를 들어, 어떤 값을 찾았을 때 더 이상 루프를 계속 실행할 필요가 없을 때 사용할 수 있다.

for (int i = 0; i < 10; i++) {
    if (i == 5) {
        break; // i가 5가 되면 루프를 종료한다
    }
    System.out.println(i); // 0부터 4까지만 출력된다
}

예제


public class Ex04_break_continue {

	public static void main(String[] args) {
		// 반복 제어문 : break, continue
		// break: 중단(반복을 중단하고 현재실행중인 반복문을 빠져나감
		// continue: 이어서 다음 반복 처리
		//------------------------------------------------
		// 1부터 10까지 출력하되 8은 출력하지 말 것
		System.out.println("---if문 사용---");
		for (int i = 1; i <= 10; i++) {
			if (i != 8) {
				System.out.print(i + " ");
			}
		}
		System.out.println();
		System.out.println("-----------------");
		// 1부터 10까지 출력하되 8은 출력하지 말 것
		for (int i = 1; i <= 10; i++) {
			if (i == 8) continue; // 8은 출력하지 말 것.
			System.out.print(i + " ");
		}
		System.out.println(); // 줄바꿈
		// \n: 줄바꿈(New line)
		
		System.out.println("\n=========break=========");
		// 1~10 출력중 8을 만나면 처리 중단
		for (int i = 1; i <= 10; i++) {
			if (i == 8) break; // break: 중단하고 빠져나감
			System.out.print(i + " ");
		}
		
		System.out.println();
		System.out.println(">> continue, break 끝--------");
		
//		---if문 사용---
//		1 2 3 4 5 6 7 9 10 
//		-----------------
//		1 2 3 4 5 6 7 9 10 
//
//		=========break=========
//		1 2 3 4 5 6 7 
//		>> continue, break 끝--------

	}

}

이중for문


public class Ex06_for_star {

	public static void main(String[] args) {
		// ***** 화면출력
		System.out.println("*****");
		System.out.println("------------");
		
		System.out.println("*****");
		System.out.println(""); // 줄 바꿈 역할
		System.out.println("------------");
		
		System.out.println("*");
		System.out.println("*");
		System.out.println("*");
		System.out.println("*");
		System.out.println("*");
		
		System.out.println(); // 줄 바꿈 역할
		
		System.out.println("-------- 반복문 print * 찍기 반복문 ---------");
		for (int i = 1; i <= 5; i++) {
			System.out.println("*");
		}
		System.out.println(); // 줄 바꿈 역할
		System.out.println("===============");
		/* 문제: 3개 행 출력 처리(각 행별로 * 5개 출력)
		 * *****
		 * *****
		 * *****
		 */
		for (int i = 1; i <= 3; i++) {
			for (int j = 1; j<= 5; j++) {
				System.out.print("*");
			}
			System.out.print("\n");
		}
		
		//=======================
		System.out.println("=======삼각형 * 찍기========");
		/*
		 * *
		 * **
		 * ***
		 * ****
		 * *****
		 ------------*/
		for (int i = 1; i <= 5; i++) {
			for (int j = 1; j <= i; j++) {
				System.out.print("*");
			}
			System.out.println();
		}

	}

}

public class Ex07_for_star_exam {

	public static void main(String[] args) {
		/*
		 * 문제1 ------------------
		 * *****
		 * ****
		 * ***
		 * **
		 * *
		 * -----------------------
		 */
		for (int i = 1; i <= 5; i++) {
			for (int j = 6 - i; j >= 1; j--) {
				System.out.print("*");
			}
			System.out.println("");
		}
		System.out.println("----------------");
		/* 문제2 ------------------
		 *     *
		 *    **
		 *   ***
		 *  ****
		 * *****
		 * -----------------------
		 */
		for (int i = 1; i <= 5; i++) {
			for (int j = 1; j <= 5; j++) {
				if (j > 5 - i) {
					System.out.print("*");
				}
				else {
					System.out.print(" ");
				}
			}
			System.out.print("\n");
		}
		System.out.println("----------------");
		/* 문제3 ------------------
		 * *****
		 *  ****
		 *   ***
		 *    **
		 *     *
		 * -----------------------
		 */
		for (int i = 1; i <= 5; i++) {
			for (int j = 1; j <= 5; j++) {
				if (j < i) {
					System.out.print(" ");
				}
				else if (j >= i) {
					System.out.print("*");
				}
			}
			System.out.print("\n");
		}
	}

}
profile
신입사원...

0개의 댓글