728x90
교재: 명품 JAVA ESSENTIAL
페이지 89 9번, 10번, Bonus1번
<9번 369게임>
import java.util.Scanner;
public class threesixnine {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int first, second;
int num;
System.out.println("1~99 사이의 정수를 입력하세요>> ");
num = scanner.nextInt();
first = num/10;
second = num%10;
System.out.print("박수");
if (first%3 == 0 && second%3 == 0)
System.out.println("짝짝");
else if (first%3 == 0 || second%3 == 0)
System.out.println("짝");
else
System.out.println("없음");
scanner.close();
}
}
2자리 수 정수를 받아 10의 자리수, 1의 자리수로 나눈 뒤
각각에서 3의 배수가 있는지 확인한 후 결과값을 출력합니다.
<10번 카페 주문하기 변형>
import java.util.Scanner;
public class cafe {
static void menu() {
System.out.println("┌───────────────┐");
System.out.println("│에스프레소 2000원 │");
System.out.println("│아메리카노 2500원 │");
System.out.println("│카푸치노 3000원 │");
System.out.println("│카페라떼 3500원 │");
System.out.println("└───────────────┘");
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String choice;
int count;
double price = 0;
boolean go = true;
while (go) {
menu();
System.out.print("커피 주문하세요>>");
choice = scanner.next();
count = scanner.nextInt();
if (choice.equals("에스프레소")) {
price = 2000 * count;
if (count >= 10)
price = price * 0.95;
}
else if (choice.equals("아메리카노"))
price = 2500 * count;
else if (choice.equals("카푸치노"))
price = 3000 * count;
else if (choice.equals("카페라떼"))
price = 3500 * count;
else
price = 0;
if (price <= 0)
continue;
go = false;
}
System.out.println((int)price +"원 입니다.");
scanner.close();
}
}
이 문제는 if문으로 만들어봤습니다.
잘못 입력되는 걸 방지하기 위하여 go로 반복문 처리 해줬습니다.
잘못 입력할 시(메뉴판에 없는 메뉴 주문 or 0개 주문) 다시 주문을 받도록 만들었습니다.
메뉴판 이클립스에선 깔끔하게 나오는데 블로그 코드블럭에선 조금 이상하게 나오네요.
이클립스에선 이렇게 보입니다.
<Bonus 1>
import java.util.Scanner;
public class Arithmetic {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("식을 입력하세요>>");
double op1 = scanner.nextDouble();
String operator = scanner.next();
double op2 = scanner.nextDouble();
double result =0;
switch(operator) {
case "+":
result = op1 + op2; break;
case "-":
result = op1 - op2; break;
case "/":
if (op2 == 0) {
System.out.println("0으로 나눌 수 없습니다.");
scanner.close(); return;
}
result = op1/op2;
break;
default:
System.out.println("연산 기호가 잘못되었습니다.");
}
System.out.println("연산 결과 "+result);
scanner.close();
}
}
이건 그냥 빈칸채우기여서 쉬웠네요
728x90
'프로그래밍 언어 > javastudy' 카테고리의 다른 글
명품 Java Essential 3단원 실습문제 (3) | 2021.07.07 |
---|---|
자바 공부 #5 up&down게임 (3) | 2021.07.05 |
자바 공부 #3 카페 주문하기 (0) | 2021.07.04 |
자바 공부 #2 지폐, 동전 개수 출력 프로그램(코드가 더러울 땐 구글링) (0) | 2021.07.04 |
자바 공부 #1 가위바위보게임 만들기(java, 코드 자동 줄맞춤 단축키) (0) | 2021.07.04 |