Step 1
package 자판기프로그램;
import java.util.Scanner;
public class Ex01자판기 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("금액을 입력하세요.");
int money = sc.nextInt();
System.out.println("메뉴를 고르세요.");
System.out.print("1.아우터(700원) 2.이구동성(1000원) 3.에그몽(500원) >> ");
int menu = sc.nextInt();
// 1. if문
if (menu == 1) {
System.out.println("잔돈 : " + (money - 700) + "원");
} else if (menu == 2) {
System.out.println("잔돈 : " + (money - 1000) + "원");
} else if (menu == 3) {
System.out.println("잔돈 : " + (money - 500) + "원");
}
// 2. 스위치 케이스
switch (menu) {
case 1:
System.out.println("잔돈 : " + (money - 700) + "원");
break;
case 2:
System.out.println("잔돈 : " + (money - 1000) + "원");
break;
case 3:
System.out.println("잔돈 : " + (money - 500) + "원");
break;
default:
System.out.println("메뉴가 아닙니다.");
break;
}
// 3. 복합대입연산자
switch (menu) {
case 1:
money -= 700;
break;
case 2:
money -= 1000;
break;
case 3:
money -= 500;
break;
default:
System.out.println("메뉴가 아닙니다.");
break;
}
System.out.println("잔돈 : " + money + "원");
}
}
Step 2
package 자판기프로그램;
import java.util.Scanner;
public class ex01자판기_1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("금액을 입력하세요.");
int money = sc.nextInt();
int temp = money; // 원래 입력한 금액을 보관하는 임의의 변수 3번에서 사용
System.out.println("메뉴를 고르세요.");
System.out.print("1.아우터(700원) 2.이구동성(1000원) 3.에그몽(500원) >> ");
int menu = sc.nextInt();
// 1, if문
if (menu == 1) {
if (money - 700 < 0) {
System.out.println("돈이 부족해요 ㅠㅠ");
System.out.println("잔돈 : " + money + "원");
} else {
System.out.println("잔돈 : " + (money - 700) + "원");
}
}
if (menu == 2) {
if (money - 1000 < 0) {
System.out.println("돈이 부족해요 ㅠㅠ");
System.out.println("잔돈 : " + money + "원");
} else {
System.out.println("잔돈 : " + (money - 1000) + "원");
}
}
if (menu == 3) {
if (money - 500 < 0) {
System.out.println("돈이 부족해요 ㅠㅠ");
System.out.println("잔돈 : " + money + "원");
} else {
System.out.println("잔돈 : " + (money - 500) + "원");
}
}
// 2. switch case형
switch (menu) {
case 1:
if (money - 700 < 0) {
System.out.println("돈이 부족해요 ㅠㅠ");
System.out.println("잔돈 : " + (money) + "원");
} else {
System.out.println("잔돈 : " + (money - 700) + "원");
}
break;
case 2:
if (money - 1000 < 0) {
System.out.println("돈이 부족해요 ㅠㅠ");
System.out.println("잔돈 : " + (money) + "원");
} else {
System.out.println("잔돈 : " + (money - 1000) + "원");
}
break;
case 3:
if (money - 500 < 0) {
System.out.println("돈이 부족해요ㅠㅠ");
System.out.println("잔돈 : " + (money) + "원");
} else {
System.out.println("잔돈 : " + (money - 500) + "원");
}
break;
default:
System.out.println("메뉴가 아닙니다.");
break;
}
// 3. 복합대입연산자
switch (menu) {
case 1:
money -= 700;
break;
case 2:
money -= 1000;
break;
case 3:
money -= 500;
break;
default:
System.out.println("메뉴가 아닙니다.");
break;
}
if (money < 0) {
System.out.println("돈이 부족해요ㅠㅠ");
money = temp; // 다시 초기에 입력한 금액으로 되돌려주는 코드
}
System.out.println("잔돈 : " + (money) + "원");
}
}
Step 3
1. switch-case 문
package 자판기프로그램;
import java.util.Scanner;
public class ex01자판기_2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("금액을 입력하세요.");
int money = sc.nextInt();
int temp = money;
System.out.println("메뉴를 고르세요.");
System.out.print("1.아우터(700원) 2.이구동성(1000원) 3.에그몽(500원) >> ");
int menu = sc.nextInt();
switch (menu) {
case 1:
money -= 700;
break;
case 2:
money -= 1000;
break;
case 3:
money -= 500;
break;
default:
System.out.println("메뉴가 아닙니다.");
break;
}
if (money < 0) {
System.out.println("돈이 부족해요ㅠㅠ");
}
System.out.println("잔돈 : " + (money) + "원");
System.out.print("천원 : " + money / 1000 + "개, ");
System.out.print("오백원 : " + (money % 1000) / 500 + "개, ");
System.out.print("백원 : " + ((money % 1000) % 500 / 100) + "개");
// == money%500/100
}
}
2. 다중 if문
package 자판기;
import java.util.Scanner;
public class ex01자판기프로그램 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("금액을 입력하세요.");
int money = sc.nextInt();
int change = 0;
System.out.println("메뉴를 고르세요.");
System.out.print("1. 아우터(700원) 2. 이구동성(1000원) 3. 에그몽(500원) >> ");
int choice = sc.nextInt();
if (choice == 1) {
change = money - 700;
if (change >= 0) {
} else {
System.out.println("돈이 부족해요 ㅠㅠ");
change = money;
}
} else if (choice == 2) {
change = money - 1000;
if (change >= 0) {
} else {
System.out.println("돈이 부족해요 ㅠㅠ");
change = money;
}
} else {
change = money - 500;
if (change >= 0) {
} else {
System.out.println("돈이 부족해요 ㅠㅠ");
change = money;
}
}
System.out.println("잔돈 : " + change + "원");
System.out.print("천원 : " + (change/1000) +"개 " );
System.out.print("오백원 : " + (change%1000/500) +"개 " );
System.out.print("백원 : " + (change%500/100) +"개" );
}
}
'Java > Java' 카테고리의 다른 글
[Java] while문 예제 로그인 프로그램/계산기 프로그램/ 플러스게임 (0) | 2022.08.02 |
---|---|
[Java] 반복문 while/do-while (0) | 2022.07.28 |
[Java] 제어문/ 조건문 (0) | 2022.07.24 |
[Java] 입출력문과 연산자 (0) | 2022.07.23 |
[Java] java 자료형 (0) | 2022.07.23 |