Java

[Java] If_2 간단한 문제 풀이

Dongi 2022. 7. 31. 18:57

 

 

 

 

 

안녕하세요! 오늘은 간단한 문제 몇 가지 가지고 왔습니다ㅎㅎ

 

 

 

 

 

1. 국어, 영어, 수학, 사회, 과학 점수를 입력받아 총점, 평균 그리고 등급을 매겨보는 프로그램을 만들어 봅시다.

 

import java.util.Scanner;

public class IfAlone02 {
	public static void main(String[] args) {
    
    	// 스캐너 객체(입력값을 받기 위해서)
        Scanner sc = new Scanner(System.in);
        
        // 입력값 받기
        System.out.print("국어 점수: ");
        int kor = sc.nextInt();
        System.out.print("영어 점수: ");
        int eng = sc.nextInt();
        System.out.print("수학 점수: ");
        int math = sc.nextInt();
        System.out.print("사회 점수: ");
        int soc = sc.nextInt();
        System.out.print("과학 점수: ");
        int sci = sc.nextInt();
        
        // 점수 총합, 평균 구하기
        int sum = kor + eng + math + soc + sci;
        double ave = (double)sum / 5;
        
        // 등급 매기기
        char grade; // 등급 선언
        if (ave >= 90 && ave <= 100) {
        	grade = 'A';
            System.out.printf("총합은 %d, 평균은 %.2f이고 등급은 %c입니다.", sum, ave, grade);
        } else if (ave >=80) {
        	grade = 'B';
            System.out.printf("총합은 %d, 평균은 %.2f이고 등급은 %c입니다.", sum, ave, grade);
        } else if (ave >=70) {
        	grade = 'C';
            System.out.printf("총합은 %d, 평균은 %.2f이고 등급은 %c입니다.", sum, ave, grade);
        } else if (ave >= 60) {
        	grade = 'D';
            System.out.printf("총합은 %d, 평균은 %.2f이고 등급은 %c입니다.", sum, ave, grade);
        } else if (ave < 60 && ave >= 0) {
        	grade = 'F';
            System.out.printf("총합은 %d, 평균은 %.2f이고 등급은 %c입니다.", sum, ave, grade);
        } else {
        	System.out.println("잘못 입력된 값입니다. 프로그램을 다시 시작해주세요.");
        }
                
        // 스캐너 닫기
        sc.close();
    }
}

 

 


 

 

2. 정수를 하나를 입력하여 한 자리수인지 두 자릿수 이상인지 판별하는 프로그램 만들기

import java.util.Scanner;

public class IfAlone03 {
	public static void main(String[] args) {
		
		// 스캐너 객체 (입력값 받기 위해서)
		Scanner sc = new Scanner(System.in);
		
		// 정수 입력 화면
		System.out.print("정수 입력: ");
		int n = sc.nextInt();
		
		// 자리수 판별
		if (n>=10 || n<=-10) {
			System.out.println(n + "는(은) 두 자릿수 이상입니다.");
		} else {
			System.out.println(n + "는(은) 한 자릿수 입니다.");
		}
		
		// 스캐너 닫기
		sc.close();
	}
}

논리 오얼 연산자(||)를 사용해서 위 코드를 만들었습니다. 

 

또 다른 방법으로는 아래의 코드가 있습니다.

import java.util.Scanner;

public class IfAlone03 {
	public static void main(String[] args) {
		
		// 스캐너 객체 (입력값 받기 위해서)
		Scanner sc = new Scanner(System.in);
		
		// 정수 입력 화면
		System.out.print("정수 입력: ");
		int n = sc.nextInt();
		
		// 자리수 판별
		if (n/10 == 0) {
			System.out.println(n + "는(은) 한 자릿수이다.");
		} else {
			System.out.println(n + "는(은) 두 자릿수 이상이다.");
		}
		
		// 스캐너 닫기
		sc.close();
	}
}

위 방법은 정수 n을 10으로 나누었을 때 몫이 0인 경우에는 무조건 한 자릿수라는 논리적인 사고를 통해 만든 코드입니다. 

 

 


 

 

본 내용은 강남 이젠아카데미컴퓨터학원에서 배운 내용을 복습하는 과정입니다.
링크 : https://gn.ezenac.co.kr/
 

강남 이젠아카데미컴퓨터학원

강남역, 컴퓨터학원, 웹디자인학원, 편집디자인학원, 카티아학원, 캐드학원, 전산회계학원, 전산세무학원, 직장인, 실업자, 국비지원, 무료교육, 취업성공패키지, 내일배움카드, 강남컴퓨터학원

gn.ezenac.co.kr