if문
if문 실습예제 1
1. 두 수를 입력 받아 큰 수를 출력 하시오
2. 세 수를 입력 받아 큰 수를 출력하시오
예제 풀이 1-1
예제 풀이 1-2
if - else 문
중첩된 if 문
중첩된 if문 예제 및 풀이
if - else if 문
실습 예제
예제 풀이
예제 직접 생성하고 풀어보기
package if_;
import java.util.Scanner;
public class Test5 {
public static void main(String[] args) {
System.out.println("-------메뉴판-------");
System.out.println("1. 햄버거(9,000원)");
System.out.println("2. 피자(11,000원)");
System.out.println("3. 치킨(32,000원)");
System.out.println("4. 금액 반환");
System.out.println("--------------------");
int coin = 0;
int menuNum = 0;
int menuCost = 0;
String menuName = null;
int whereNum = 0;
String where = null;
Scanner sc = new Scanner(System.in);
System.out.print("금액을 투입하세요 : ");
coin = sc.nextInt();
if (coin >= 9000) {
System.out.print("메뉴를 선택하세요 : ");
menuNum = sc.nextInt();
if (menuNum == 1) {
menuCost = 9000;
menuName = "햄버거";
}else if (menuNum == 2) {
menuCost = 11000;
menuName = "피자";
}else if (menuNum == 3) {
menuCost = 32000;
menuName = "치킨";
}
if (menuNum < 1 && menuNum > 4) {
System.out.printf("올바른 주문이 아닙니다. %d원 반환\n", coin);
}else if (menuCost > coin){
System.out.printf("투입 금액이 부족합니다. %d원 반환\n", coin);
}else if (menuNum >= 1 && menuNum <= 3){
System.out.print("식사 방식을 선택하세요. (1. 포장, 2.매장식사)");
whereNum = sc.nextInt();
if (whereNum != 1 && whereNum != 2) {
System.out.printf("선택 오류 %d원 반환\n", coin);
}else {
if(whereNum == 1) {
where = "포장";
}else {
where = "매장식사";
}
System.out.println("------------------");
System.out.printf("주문 메뉴 : %s\n", menuName);
System.out.println(where);
System.out.printf("거스름돈 : %d원\n", (coin - menuCost));
System.out.println("------------------");
}
}else if (menuNum == 4) System.out.printf("투입 금액 %d원 반환", coin);
}else {
System.out.printf("주문할 수 있는 메뉴 없음 %d원 반환\n", coin);
}
}
}
예제 풀이 ( 복잡 )
package if_;
import java.util.Scanner;
public class Test6 {
public static void main(String[] args) {
System.out.println("-------메뉴판-------");
System.out.println("1. 햄버거(9,000원)");
System.out.println("2. 피자(11,000원)");
System.out.println("3. 치킨(32,000원)");
System.out.println("4. 금액 반환");
System.out.println("--------------------");
int coin = 0;
int menunum = 0;
int menucost = 0;
String menuname = null;
int wherenum = 0;
String where = null;
Boolean isValid; //최소 금액이 넘었는지 확인
/**
* 금액 투입
*/
Scanner sc = new Scanner(System.in);
System.out.print("금액을 투입하세요 : ");
coin = sc.nextInt();
//coin이 최소 금액은 넘어야지 기본적으로 주문이 가능함.
if (coin >= 9000) {
isValid = true;
}
else{
isValid = false;
}
/**
* 메뉴 선택
*/
if(isValid){
System.out.print("메뉴를 선택하세요 : ");
menunum = sc.nextInt();
if (menunum == 1) {
menucost = 9000;
menuname = "햄버거";
}else if (menunum == 2) {
menucost = 11000;
menuname = "피자";
}else if (menunum == 3) {
menucost = 32000;
menuname = "치킨";
}
else{
System.out.printf("올바른 주문이 아닙니다. %d원 반환", coin);
}
}
else{
System.out.printf("주문할 수 있는 메뉴 없음 %d원 반환\n", coin);
}
/**
* 구매 가능 여부 확인
*/
if ((menunum == 1) || (menunum == 2) || (menunum == 3)) {
if ((coin - menucost) >= 0) {
System.out.print("식사 방식을 선택하세요. (1. 포장, 2.매장식사)");
wherenum = sc.nextInt();
if (wherenum == 1) {
where = "포장";
}else{
where = "매장식사";
}
System.out.println("------------------");
System.out.printf("주문 메뉴 : %s\n", menuname);
System.out.println(where);
System.out.printf("거스름돈 : %d원\n", (coin - menucost));
System.out.println("------------------");
}
else{
System.out.printf("투입 금액이 부족합니다. %d원 반환\n", coin);
}
}
}
}
예제 풀이 ( 깔끔 )
'국비지원_핀테크' 카테고리의 다른 글
7일차_ [java] 반복문 ( for ) (0) | 2024.02.08 |
---|---|
7일차_ [java] 제어문 ( switch - case ) (0) | 2024.02.08 |
5일차_ [java] 실습 예제 ( 입력 받아 간단한 계산하는 프로그램 ) (0) | 2024.02.06 |
5일차_ [java] 산술 연산자, 복합 대입 연산자, 관계 연산자, 논리 연산자 (1) | 2024.02.06 |
5일차_ [java] Scanner 사용하여 입력 받기 (0) | 2024.02.06 |