728x90
import java.util.Scanner;
public class Mycalculator
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in); // 입력 처리 객체
while(true)
{
showMenu();
// int num = sc.nextInt();
char myChar = sc.next().charAt(0);
if (!checkNum(myChar))
{
System.out.println("메뉴를 잘못 선택했습니다.");
continue;
}
int num = myChar - '0';
// int 변수 = 문자 - 문자; -> 산술 연산이기 때문에
// char형 데이터는 int형 데이터로 형변환 됨
System.out.println(num);
if (num == 0)
{
break;
}
else
{
if (num > 4)
{
System.out.println("메뉴를 잘못 선택했습니다.");
continue;
}
System.out.print("첫 번째 숫자: ");
int num1 = sc.nextInt();
System.out.print("두 번째 숫자: ");
int num2 = sc.nextInt();
if (num == 1)
addNum(num1, num2);
else if (num == 2)
minusNum(num1, num2);
else if (num == 3)
multiplyNum(num1, num2);
else if (num == 4)
divideNum(num1, num2);
}
}
System.out.println("계산기를 종료합니다.");
}
public static void showMenu()
{
System.out.println("메뉴를 선택하세요.");
System.out.println("1. 더하기");
System.out.println("2. 빼기");
System.out.println("3. 곱하기");
System.out.println("4. 나누기");
System.out.println("0. 끝내기");
}
public static void addNum(int num1, int num2)
{
int result = num1 + num2;
System.out.println(num1 + " + " + num2 + " = " + result);
}
public static void minusNum(int num1, int num2)
{
int result = num1 - num2;
System.out.println(num1 + " - " + num2 + " = " + result);
}
public static void multiplyNum(int num1, int num2)
{
int result = num1 * num2;
System.out.println(num1 + " * " + num2 + " = " + result);
}
public static void divideNum(int num1, int num2)
{
int result1 = num1 / num2;
System.out.println(num1 + " / " + num2 + " = " + result1);
int result2 = num1 % num2;
System.out.println(num1 + " % " + num2 + " = " + result2 );
}
public static boolean checkNum(char ch)
{
if (ch >= '0' && ch <= '9')
{
return true;
}
else
{
return false;
}
}
}
'JAVA > 이재환의 자바 프로그래밍 입문' 카테고리의 다른 글
[Java] Ch.10 자바의 메모리 모델 (1) | 2023.10.17 |
---|---|
[Java] Ch.9 클래스의 기초 (1) | 2023.10.17 |
[Java] Ch.7 메서드와 변수의 사용 가능 범위 (0) | 2023.10.16 |
[Java] Ch.6 제어문 (1) | 2023.10.16 |
[Java] Ch.5 콘솔 출력과 입력 (1) | 2023.10.13 |