● 제어문
1. 조건문
- 조건에 따라서 다른 코드를 실행할 때 사용한다.
- 분기 처리를 할 때 사용한다.
(1) if문
- 조건식이 참이면 if문 안의 문장을 실행한다.
- 조건식이 거짓이면 if문 안의 문장을 실행하지 않는다.
if(조건식) {
조건식이참일때수행할문장;
조건식이참일때수행할문장;
....
}
조건문바깥영역;
(2) switch문
2. 반복문
(1) for문
(2) while문
(3) do~while문
※ 조건식
- 참 혹은 거짓을 판별하는 식
- 조건식 자리에는 boolean 타입이 온다
실습(삼항연산자(2))
1. 두 정수를 입력 받아서 두 수 중 더 큰 수 출력하기(입력된 수가 같은 경우에는 같다라고 출력하기)
import java.util.Scanner;
public class ConditionalTask {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("첫 번째 정수 입력 >> ");
int num1 = sc.nextInt();
System.out.print("두 번째 정수 입력 >> ");
int num2 = sc.nextInt();
String res = num1 > num2 ? num1 + "" : num1 == num2 ? "같다" : num2 + "";
System.out.println("둘 중 더 큰 수 : " + res);
}
}
![](https://blog.kakaocdn.net/dn/bw3Jps/btroHbrrAgi/c79Kb15rSnOZQMuAdKlpz1/img.png)
2. 두 정수를 입력 받아서 두 수의 차(큰수 - 작은수)를 출력하기
import java.util.Scanner;
public class ConditionalTask {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("첫 번째 정수 입력 >> ");
int num1 = sc.nextInt();
System.out.print("두 번째 정수 입력 >> ");
int num2 = sc.nextInt();
int res = num1 > num2 ? num1 - num2 : num2 - num1;
System.out.println("두 수의 차는 " + res + " 입니다.");
}
}
![](https://blog.kakaocdn.net/dn/bZwEv6/btroJh5FuUu/HcHlmOE5JKssdEHxno8bKK/img.png)
3. 국어, 영어, 수학 점수를 입력 받아서 평균을 구한 후 평균이 80점 이상이면 합격, 아니면 불합격 출력하기
import java.util.Scanner;
public class ConditionalTask {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("국어 점수 >> ");
int kor = sc.nextInt();
System.out.print("수학 점수 >> ");
int math = sc.nextInt();
System.out.print("영어 점수 >> ");
int eng = sc.nextInt();
int avg = (kor + math + eng) / 3;
System.out.println(avg >= 80 ? "합격" : "불합격");
}
}
![](https://blog.kakaocdn.net/dn/4JazN/btroLfeHni5/4ohf5fK4K9kNu65pw0Wz2K/img.png)
![](https://blog.kakaocdn.net/dn/bmTeB7/btroFVviElm/JLrcu74wAElojAKdOhKvQK/img.png)
4. 키와 나이를 입력 받아서 8살 이상, 120cm 이상이면 놀이기구 탑승 가능, 아니면 불가능 출력하기
import java.util.Scanner;
public class ConditionalTask {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("키 >> ");
int height = sc.nextInt();
System.out.print("나이 >> ");
int age = sc.nextInt();
String res = age >= 8 && height >= 120 ? "탑승 가능" : "탑승 불가능";
System.out.println(res);
}
}
![](https://blog.kakaocdn.net/dn/wCOxe/btroJknRbme/HEsIYL58khafYoqk9kiKVK/img.png)
![](https://blog.kakaocdn.net/dn/QKggE/btroHbdTYRC/5VIBbnGYsXxF8f4MqLlcpK/img.png)
5. 나이를 입력받아서 10 ~ 30까지는 1500원 그 외는 무료라고 출력하기
import java.util.Scanner;
public class ConditionalTask {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("나이 >> ");
int age = sc.nextInt();
String res = age >= 10 && age <= 30 ? "1500원" : "무료";
System.out.println(res);
}
}
![](https://blog.kakaocdn.net/dn/dM3NZe/btroEnTkjsA/id2HQdHV9qBsShaFqXzZ60/img.png)
![](https://blog.kakaocdn.net/dn/QY4Z0/btroLfyZ6Da/Rd57sQyGtHHGt2Jl65mJZk/img.png)
6. 한 박스에 20개의 라면이 들어갈 때, 라면의 갯수를 입력 받아 필요한 상자의 개수를 출력하기
import java.util.Scanner;
public class ConditionalTask {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("라면 갯수 >> ");
int ramen = sc.nextInt();
int box = ramen % 20 == 0 ? ramen / 20 : (ramen / 20) + 1;
System.out.println("필요한 상자는 " + box + "개 입니다.");
}
}
![](https://blog.kakaocdn.net/dn/V4CVW/btroKEZ6iXe/BRTrTm29uIzbNPUOL4Zk5K/img.png)
실습(제어문 - if문)
1. if문 안의 문장과 바깥 문장 출력
- if문 안의 조건식이 true일 때
import java.util.Scanner;
public class IfTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
if(true) {
System.out.println("if문 안의 문장1");
System.out.println("if문 안의 문장2");
System.out.println("if문 안의 문장3");
}
System.out.println("if문 바깥 문장");
}
}
![](https://blog.kakaocdn.net/dn/sDEKn/btroE6DNKBH/IWT97rZOXkZzPgR3KkLlT1/img.png)
- if문 안의 조건식이 false일 때
import java.util.Scanner;
public class IfTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
if(false) {
System.out.println("if문 안의 문장1");
System.out.println("if문 안의 문장2");
System.out.println("if문 안의 문장3");
}
System.out.println("if문 바깥 문장");
}
}
![](https://blog.kakaocdn.net/dn/pFols/btroFKVe4DA/KKz3iYSUJN3AcIPtzaeWlK/img.png)
2. 사용자에게 숫자를 입력받은 후 짝수면 "짝수입니다", 홀수면 "홀수입니다" 출력하기
import java.util.Scanner;
public class IfTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("정수를 입력하세요 >> ");
int num = sc.nextInt();
// 짝수일 때 "짝수입니다" 출력
if(num % 2 == 0) {
System.out.println("짝수입니다");
}
// 홀수일 때 "홀수입니다" 출력
if(num % 2 != 0) {
System.out.println("홀수입니다");
}
}
}
![](https://blog.kakaocdn.net/dn/dglqWF/btroKx7RgIz/jkHam3uRf31qO7nMe4KLA1/img.png)
![](https://blog.kakaocdn.net/dn/8aOP6/btroJ0PYrU9/nhtLvrvQFumH2AJl05dDJk/img.png)