Frog is cry
if문(Day07) 본문
package day08;
public class Day08_02 {
// 조건문 예제1
/*
* if(조건식) { 조건식의 연산결과가 true 일 때 실행될 참종속문장(들)
* } else {
* 조건식의 연산결과가 false 일 때 실행될 거짓종속문장(들)
* 거짓종속문장이 2개 이상일 때는 반드시 블럭을 만들어 주어야 합니다.
* }
*/
public static void main(String[] args) {
int score = 89;
if (score >= 90) {
System.out.println("점수가 90보다 큽니다.");
System.out.println("등급 A입니다.");
}
if(score < 90)
System.out.println("점수가 90보다 작습니다.");
System.out.println("점수는 B입니다."); // 이 무장의 정체성을 발견하세요
// 바디(중괄호)를 닫지 않으면 if문이 아님
// 정체성을 발견하라는 문장은 if문과 상관없는 문장입니다.
//
// int num = 0;
// if(1) { // 조건식에는 어떤 연산식이 올수 있는가의 해석이 C언어와 달라요.
// 조건식에는 반드시 true또는 false값을 산출할 수 있는 연산식이나
// boolean 타입의 변수가 와야 합니다. 즉, 조건식의 수행결과가
// 반드시 true/false중에 하나로 도출 되어야합니다.
// 결국 이 문장은 에러입니다.
// System.out.println("참입니다.");
// }
//
boolean status = false;
if(status) {
System.out.println("참을 찍고 싶어요.");
}else {
System.out.println("거짓입니다.");
}
// 위의 if문과 다르게 동작할까요?
if (status)
System.out.println("참을 찍고 싶어요."); //종속문장이 1줄 뿐인 경우에는 {}블럭 처리를 생략해도됩니다.
else
System.out.println("거짓입니다."); //종속문장이 1줄 뿐인 경우에는 {}블럭 처리를 생략해도됩니다.
}
}
package day08;
public class Day08_03 {
public static void main(String[] args) {
int score = 85;
//
if (score >= 90) { // 90이상 경우이다. 8~9까지 참종속문장 블럭
System.out.println("점수가 90보다 큽니다.");
System.out.println("등급은 A입니다.");
}else { // score가 90보다 작은(미만)경우이다. 11~12까지 거짓종속문장 블럭
System.out.println("점수가 90보다 작습니다.");
System.out.println("등급은 B입니다.");
}
}
}
package day08;
public class Day08_04 {
//조건문예제3 : if-else if else문
public static void main(String[] args) {
int score = 65;
if (score >= 90) {
System.out.println("점수가 100~90입니다.");
System.out.println("등급은 A입니다.");
}else if(score == 75) { // 이 조건식에 대응하는 9~10 라인의 참종속문장은
// 1회 수행 후 23라인 아래로 이동합니다.
// 즉, if~ else if ~ else문은 부속된 조건식에 대응하는 참 종속문장의 실행후
// if~ else if ~ else문의 끝으로 이동합니다. 개념탑재 필수!
System.out.println("점수가 75입니다.");
System.out.println("등급은 C입니다.");
}else if(score >= 80) {
System.out.println("점수가 80~89입니다.");
System.out.println("등급은 B입니다.");
}else if(score >= 70) {
System.out.println("점수가 70~79입니다.");
System.out.println("등급은 C입니다.");
}else {
System.out.println("점수가 70미만입니다.");
System.out.println("등급은 D입니다.");
}
}
}
package day09;
public class Day09_01 {
// 순서도, 흐름도(플로우차트)
// if문과 if~else if ~ else문의 실행흐름(게시판의 순서도)를 꼭 이해하세요
//
// if문과 if~else if ~ else문을 이용한 주사위번호 추출
// if문과 if~ else if ~ else문에서 else구절은 생략이 가능합니다.
public static void main(String[] args) {
int num = (int)(Math.random() * 6) +1; // 난수발생기 관용어구
// Math.random 메소드를 이용하여 1부터 6까지의 숫자중 하나를 추출함
// 메소드는 0.0이상 1.0 이하의 double형식의 난수를 하나 리턴함.
// 0.0 <= Math.random() < 1.0의 개념임
// random() 로 추출된 결과값이 더블형이므로 이를 정수형으로
// 강제 형변환(int)하였음.
// 또 다른 예 로또번호 추출 : int num = (int) (Math.random() *45) +1;
if(num == 1) {
System.out.println("1번이 나왔습니다.");
}else if(num == 2) {
System.out.println("2번이 나왔습니다.");
}else if(num == 3) {
System.out.println("3번이 나왔습니다.");
}else if(num == 4) {
System.out.println("4번이 나왔습니다.");
}else if(num == 5) {
System.out.println("5번이 나왔습니다.");
}else if(num == 6){
System.out.println("6번이 나왔습니다.");
}
}
}
'JAVA > 국비수업' 카테고리의 다른 글
for문(Day08) (0) | 2020.07.14 |
---|---|
switch문(Day08) (0) | 2020.07.14 |
삼항연산자(Day06) (0) | 2020.07.14 |
연산자 비교(Day06) (0) | 2020.07.14 |
변수의 오버플로우(Day06) (0) | 2020.07.14 |
Comments