Java day 6

유요한·2022년 4월 10일
0

자바

목록 보기
6/24

for문

for문 예제1

● 구구단 생성
	import java.util.Scanner;

public class HomeWork {

	public static void main(String[] args) {
		/*
		 * // 구구단 2~9단 출력하기(2분 생각)
      // ------ 2단 -------
      // 2 x 1 = 2
      // .....
      // 2 x 9 = 18
      // ------ 3단 -------
      // 3 x 1 = 3
      // .....
      // 3 x 9 = 27
		 */
		System.out.println("------- 2단 -------");
		for(int i =1; i < 10; i++) {
			System.out.println("2x " + i + "=" + (i * 2));
		}
		System.out.println("------- 3단 -------");
		for(int i = 1; i <10; i++) {
			System.out.println("3x " + i + "=" + (i * 3));
		}
		System.out.println("------- 4단 -------");
		for(int i = 1; i <10; i++) {
			System.out.println("4x " + i + "=" + (i * 4));
		}
		System.out.println("------- 5단 -------");
		for(int i = 1; i <10; i++) {
			System.out.println("5x " + i + "=" + (i * 5));
		}
		System.out.println("------- 6단 -------");
		for(int i = 1; i <10; i++) {
			System.out.println("6x " + i + "=" + (i * 6));
		}
		System.out.println("------- 7단 -------");
		for(int i = 1; i <10; i++) {
			System.out.println("7x " + i + "=" + (i * 7));
		}
		System.out.println("------- 8단 -------");
		for(int i = 1; i <10; i++) {
			System.out.println("8x " + i + "=" + (i * 8));
		}
		System.out.println("------- 9단 -------");
		for(int i = 1; i <10; i++) {
			System.out.println("9x " + i + "=" + (i * 9));
		}

		// 이중 for문을 사용해서 2단~9단 한번에 출력하기
		for(int i = 2; i < 10; i++) {
			for(int j = 1; j < 10; j++) {
		    	System.out.println(i + " x " + j + " = " + (i * j));
		    }
		}

for문 예제2

● 반복문을 사용하고 1 ~ 100 중 하나의 값을 입력받아서
   1부터 입력된 숫자까지 총합을 구하기
	System.out.print("1 ~ 100까지의 숫자중 하나를 입력하세요 : ");
		Scanner sc = new Scanner(System.in);
		int num = 0;
		int num2 = sc.nextInt();
		
		// if(num <= 100) 이렇게 하면 100까지로 제한할 수 있다.
		if(num <= 100) {
			for(int i = 1; i <= num2; i++) {
			num = num + i; 
		
		}
		System.out.println("1에서 10까지의 총합은 " + num +"입니다.");
	  }

for문 예제3

	 * 반복문을 사용하여 아래와 같이 출력되도록 만드세요.
		 * 
		 * #
		 * ##
		 * ###
		 * 
		 * #을 1 ~ 3번까지 차례로 출력
		 */
		
		// 방법 1 (for문 안에 for문을 사용한 이중 반복문 사용 방법.)
		for(int i = 1; i <= 3; i++) {
			for(int j= 1; j <= i; j++) {
				System.out.print("#");
			}
			System.out.println();
		}
		
		// 방법 2 (String 변수에 "#"을 저장, 연산 하는 방법)
		String shap = "#";
		for(int i = 0; i < 3; i++) {
			System.out.print(shap);
			System.out.println();
			shap = shap + "#";
		}

for문 예제4

	Scanner sc = new Scanner(System.in);
		String[] menu = new String[] {"햄버거 2000원", "감자튀김 500원","콜라 1000원", "주문하기"};
		int[] money = {2000, 500, 1000, 0};		// 여기에 있는것이 위에있는 배열에 저장
		int[] a = new int[5];
		int price = 0;
		
		System.out.println("==== 주문메뉴 ====");
		System.out.println("1." + menu[0]);
		System.out.println("2." + menu[1]);
		System.out.println("3." + menu[2]);
		System.out.println("4." + menu[3]);
		
		for(int count = 0; count <5; count++) {
			if(count < 5) {				// 5 밑으로만 가능하게 조건을 넣어준것임
				System.out.print("주문 메뉴를 선택하세요: ");
				int me = sc.nextInt();
				if(me == 1) {
					System.out.println("주문 메뉴 출력 " + menu[0]);
					price = price + 2000;
					System.out.printf("주문 금액 : %d원\n", price);
					System.out.printf("남은 횟수 : %d번\n", 5 - count );
				} else if(me ==2) {
					System.out.println("주문 메뉴 출력 " + menu[1]);
					price = price + 500;
					System.out.printf("주문 금액 : %d원\n", price);
					System.out.printf("남은 횟수 : %d번\n", 5 - count );
				} else if(me ==3) {
					System.out.println("주문 메뉴 출력 " + menu[2]);
					price = price + 1000;
					System.out.printf("주문 금액 : %d원\n", price);
					System.out.printf("남은 횟수 : %d번\n", 5 - count );
				} else if(me == 4) {
					break;
			}
			
			
			
			}
		}
			System.out.printf("총 결제 금액은 %d원 입니다." , price);

while - switch

	while(true) {
			System.out.print("1 ~ 3번 메뉴를 선택하세요 :");
			int in = sc.nextInt();
			
			switch (in) {
			case 1:
				System.out.println("1. 햄버거를 선택하셨습니다.");
				break;
			case 2:
				System.out.println("2. 콜라를 선택하셨습니다.");
				break;
			case 3:
				System.out.println("3. 사이다를 선택하셨습니다.");
				break;

			default:
				System.out.println("메뉴가 존재하지 않습니다.");
				break;
			}
            // 3을 넘어가면 while(true)문을 끝낸다.
			if(in > 3) break;
		}

Beak and Continue

break

  • break는 무한문을 벗어날 때 사용한다.

  • break를 사용하면 가까운 무한문을 벗어난다.

    continue

  • continue를 만나면 해당 반복 부분만 탈출하고 다음번 반복을 이어서한다.

    int = 1; i < 5;니까 1~4가 출력이 되야지만
    if(i == 3) continue;를 사용해서 1, 2, 4가 출력이 된다.

    	 int menu = 0, num = 0;
    		
           // 이름을 정해줘서 break에서 전부 벗어 날수 있게 해준다.
    			outer:
    				while(true) {
    					System.out.println("1. 샤브샤브");
    					System.out.println("2. 족발");
    					System.out.println("3. 치킨");
    					System.out.print("원하는 메뉴(1~3)을 고르세요(종료:0)");
    					menu = sc.nextInt();
    				
    					if(menu == 0) {
    						System.out.println("프로그램을 종료합니다.");
    						break;
    					} else if(!(1 <= menu && menu <= 3)) {
    						System.out.println("메뉴를 잘못 선택하셨습니다.(종료:0)");
    						continue;
    					} else if(menu == 1) {
    						System.out.println("샤브샤브를 고르셨습니다.");
    						System.out.println("가격: 14500원");
    					} else if(menu == 2) {
    						System.out.println("족발을 고르셨습니다.");
    						System.out.println("가격: 34000원");
    					} else if(menu == 3) {
    						System.out.println("치킨을 고르셨습니다.");
    						System.out.println("가격: 20000원");
    					}
    					for(;;) {
    						System.out.print("계산할 값을 입력하세요. (계산 종료:0, 전체 종료:99): ");
    						num = sc.nextInt();
    					
                       // for(;;)문을 벗어남
    						if(num == 0) break;
                       // 무한문 전체를 벗어난다.
    						if(num == 99) break outer;
    					
    						switch (menu) {
    						case 1:
    							System.out.println("result = " + num+"원");
    							break;
    						case 2:
    							System.out.println("result = " + num+"원");
    							break;
    						case 3:
    							System.out.println("result = " + num+"원");
    							break;
    					
    						}
    					}
    				}
      
profile
최선을 다하자!!

0개의 댓글

관련 채용 정보

Powered by GraphCDN, the GraphQL CDN