728x90
반응형
if문
- ()안의 값이 true면 {}안의 코드를 실행하는 문법
- ()안의 값이 false면 {}안의 코드를 무시한다.
else if문
- 위의 if문에서 조건이 맞지 않아 실행되지 않았다면 if문처럼 동작한다.
- else if는 여러번 사용할 수 있다.
- else if는 단독으로 사용할 수 없다.
else문
- 위의 if, else if가 모두 실행되지 않았을 때 {}안의 내용을 무조건 실행
- if문 바로 다음에 사용할 수도 있다.
- if문 없이 단독으로 사용할 수 없다.
- else가 붙어있다면 if문은 최소한 한 번은 반드시 실행된다.
import java.util.Scanner;
public class B03_if {
public static void main(String[] args) {
System.out.println("프로그램 시작");
Scanner sc = new Scanner(System.in);
System.out.print("사과의 개수를 입력 > ");
int apple = sc.nextInt();
// true / false를 요구하는 ()안에 비교 연산을 넣어서 사용할 수 있다.
if (apple > 10) {
System.out.println("너무 무거워요.");
} else if (apple < 0) {
System.out.println("사과가 0보다 작을 수 없습니다.");
} else if(apple % 2 == 0) {
System.out.println("사과의 개수가 10개 이하의 짝수입니다.");
} else {
System.out.println("위의 조건을 모두 만족하지 못했습니다.");
}
int num;
// if문에 else가 있어야 반드시 초기화 된다는 것이 보장된다.
if (apple == 7) {
num = 0;
} else if (apple > 7) {
num = 0;
} else if (apple < 7) {
num = 0;
} else {
num = 0;
}
System.out.println(num); // else문이 없으면 error
System.out.println("프로그램 종료");
}
}
Quiz
국어, 영어, 수학 점수를 차례대로 입력받아 평균 점수를 구한 후에
각 과목의 점수와 등급, 평균 점수를 출력해주는 프로그램을 만들어보세요
1. 90점 이상 A
80점 이상 B
70점 이상 C
60점 이상 D
그 외 F
2. 각 과목의 유효한 점수는 0~100점이다.
유효하지 않은 점수가 하나라도 있다면 모든 과목이 F 평균 점수는 0점
3. 평균 점수는 소수 둘째 자리에서 반올림하여 저장 후 출력
Answer
package quiz;
import java.util.Scanner;
public class B03_scoreToGrade {
/*
국어, 영어, 수학 점수를 차례대로 입력받아 평균 점수를 구한 후에
각 과목의 점수와 등급, 평균 점수를 출력해주는 프로그램을 만들어보세요
1. 90점 이상 A
80점 이상 B
70점 이상 C
60점 이상 D
그 외 F
2. 각 과목의 유효한 점수는 0~100점이다.
유효하지 않은 점수가 하나라도 있다면 모든 과목이 F 평균 점수는 0점
3. 평균 점수는 소수 둘째 자리에서 반올림하여 저장 후 출력
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("과목 점수를 입력하세요 > ");
int korean = sc.nextInt();
int english = sc.nextInt();
int math = sc.nextInt();
char grade1;
char grade2;
char grade3;
if(korean > 100 || korean <= 0) {
grade1 = 'F';
grade2 = 'F';
grade3 = 'F';
korean = 0;
english = 0;
math = 0;
} else if (korean >= 90) {
grade1 = 'A';
} else if (korean >= 80) {
grade1 = 'B';
} else if (korean >= 70) {
grade1 = 'C';
} else if (korean >= 60) {
grade1 = 'D';
} else {
grade1 = 'F';
}
if(english > 100 || english <= 0) {
grade1 = 'F';
grade2 = 'F';
grade3 = 'F';
korean = 0;
english = 0;
math = 0;
} else if (english >= 90) {
grade2 = 'A';
} else if (english >= 80) {
grade2 = 'B';
} else if (english >= 70) {
grade2 = 'C';
} else if (english >= 60) {
grade2 = 'D';
} else {
grade2 = 'F';
}
if(math > 100 || math <= 0) {
grade1 = 'F';
grade2 = 'F';
grade3 = 'F';
math = 0;
korean = 0;
english = 0;
} else if (math >= 90) {
grade3 = 'A';
} else if (math >= 80) {
grade3 = 'B';
} else if (math >= 70) {
grade3 = 'C';
} else if (math >= 60) {
grade3 = 'D';
} else {
grade3 = 'F';
}
System.out.printf("국어 : %d, 등급 : %c \n", korean, grade1);
System.out.printf("영어 : %d, 등급 : %c \n", english, grade2);
System.out.printf("수학 : %d, 등급 : %c \n", math, grade3);
System.out.printf("평균 점수 : %.2f ", (korean + english + math)/3.0);
}
}
728x90
반응형
'JAVA > 기본 이론' 카테고리의 다른 글
JAVA | 조건문(switch문) (0) | 2023.02.27 |
---|---|
JAVA | 연산자(Operator)(3) (0) | 2023.02.25 |
JAVA | 연산자(Operator)(2) (0) | 2023.02.22 |
JAVA | 연산자(Operator)(1), Math 메서드 (0) | 2023.02.22 |
JAVA | Scanner 클래스 사용법 (0) | 2023.02.21 |