ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 쉽게 배우는 자바 프로그래밍 2판 3장 프로그래밍 문제
    JAVA/연습문제 2022. 10. 5. 10:46
    반응형

    # 개발 공부하는 초보자가 작성한 답안이니 정답이 아닐 수 있습니다!!!

    1. 키보드로 입력한 정수가 19 이상이면 '성년'. 아니면 '미성년'을 출력하는 프로그램을 if ~ else문을 사용하여 작성해라

    1번
    	public static void main(String[] args) {
    
    		Scanner juScanner = new Scanner(System.in);
    		int grade = juScanner.nextInt();
    
    		if (grade >= 19) {                             // 나이가 19살 이상이면 성년
    			System.out.println("성년");
    		} else {                                       // 그렇지 않다면 미성년
    			System.out.println("미성년");
    		}
    		juScanner.close();
    
    	}

     

     

    2. 키보드로 등수를 입력받아 1등이면 '아주 잘했습니다'. 2~3등이면 '잘했습니다'. 4~6등이면 '보통입니다', 그 외 등수이면 '노력해야겠습니다'라고 출력하는 프로그램을 switch문을 사용하여 작성해라

    2번
    	public static void main(String[] args) {
    		Scanner dngScanner = new Scanner(System.in);
    		int dngSu = dngScanner.nextInt();
    
    		switch (dngSu) {
    		case 1 -> System.out.println("아주 잘했습니다.");       // 1등이면 "아주 잘했습니다"
    		case 2, 3 -> System.out.println("잘했습니다");          // 2등 혹은 3등 "잘했습니다."
    		case 4, 5, 6 -> System.out.println("보통입니다");       // 4등, 5등 혹은 6등 "보통입니다"
    		default -> System.out.println("노력해야겠습니다");      // 그 외는 "노력해야겠습니다"
    
    		}
    	}

     

     

    3. 키보드로 입력된 양의 정수 중에서 짝수만 덧셈해서 출력하는 코드를 do~while문을 사용해 작성해라. 단, 입력된 정수가 양수가 아니라면 입력을 종료한다.

    3번
    	public static void main(String[] args) {
    		Scanner yanScanner = new Scanner(System.in);
    		int yanJungSu = 0;
    		int sum = 0;
    
    		do {
    			System.out.print("양의 정수를 입력하세요 : ");
    			yanJungSu = yanScanner.nextInt();
    			while (yanJungSu >= 0) {
    				sum += yanJungSu;
    				break;
    			}
    
    		} while (yanJungSu >= 0);
    		System.out.println("입력한 양의 정수 중에서 짝수의 합은 " + sum);
    
    	}

     

     

    4. 다음 실행 결과를 출력하는 프로그램을 for 문을 사용해 작성해라

    4번 실행결과
    *
    **
    ***
    ****
    *****

     

    	public static void main(String[] args) {
    		String Star = "";
    		for (int i = 0; i < 5; i++) {
    			Star += "*";
    			System.out.println(Star);
    		}
    
    	}

     

     

    5. 각 변의 길이 합이 20 이하이며 각 변의 길이가 정수인 직각 삼각형의 모든 변을 구하라.

    5번
    		// 밑변 + 높이 + 대각선 <= 20
    		// 밑변제곱 + 높이제곱 = 대각선 제곱
    
    		int mit, high, daGak, mit2, high2, daGak2, count = 0;
    
    		for (mit = 1; mit < 8; mit++) {
    			for (high = 1; high < 8; high++) {
    				for (daGak = 1; daGak < 8; daGak++) {
    					mit2 = mit * mit;
    					high2 = high * high;
    					daGak2 = daGak * daGak;
    					if ((((mit + high + daGak) <= 20) && (daGak2 == (mit2 + high2)))) {
    						count += 1;
    						System.out.printf("%d번째 방법\n", count);
    						System.out.println("만족하는 밑변의 길이" + mit);
    						System.out.println("만족하는 높이의 길이" + high);
    						System.out.printf("만족하는 대각선의 길이 %d\n\n", daGak);
    					}
    				}
    			}
    		}

     

     

    다음페이지에 계속!!

    반응형

    댓글

Designed by Tistory.