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/