728x90
한 클래스 파일에 계산기 만들기
몫을 소수점 2번째 자리까지 받기위해서 String.format을 사용
package variable;
public class CalcaTest {
public static void main(String[] args) {
short a = 320;
short b = 258;
int sum = a + b;
int sub = a - b;
int mul = a * b;
double div = a / b;
System.out.println(a + " + "+b+" = "+sum);
System.out.println(a + " - "+b+" = "+sub);
System.out.println(a + " * "+b+" = "+mul);
System.out.println(a + " / "+b+" = "+String.format("%.2f", div));
320 + 258 = 578 320 - 258 = 62 320 * 258 = 82560 320 / 258 = 1.00 |
String.format(" ", 값(정수,실수));
정수나 실수를 ""의 조건에 맞춰서 string 타입으로 변환시켜 출력하는 메소드
한 클래스 파일에 메소드를 만들어 계산기 만들기
출력값을 받기위해 알맞은 int, double을 사용
package method;
public class MethodTeat3 {
public int plus(int a, int b) {
return a + b;
}
public int minus(int a, int b) {
return a - b;
}
public int multiply(int a, int b) {
return a * b;
}
public double division(int a, int b) { //받는값은 정수니깐 int, 결과값은 소수점을 나타내야 하니깐 double
return (double) a / b; //강제 형변환/ 자동 형변환
}
public static void main(String[] args) {
MethodTeat3 mt = new MethodTeat3();
System.out.println("합 = " + mt.plus(25, 36));
System.out.println("차 = " + mt.minus(25, 36));
System.out.println("곱 = " + mt.multiply(25, 36));
System.out.println("몫 = " + mt.division(25, 36));
System.out.println("몫 = " + String.format("%.2f", mt.division(25, 36)));
}
}
합 = 61 차 = -11 곱 = 900 몫 = 0.6944444444444444 몫 = 0.69 |
switch를 이용한 계산기
package method;
import java.util.Scanner;
public class Calcuator {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num1 =0, num2 =0;
int choice = 0;
String menuMsg = "1.계산하기\n2.나가기";
String oper="";
String result = "";
while(true) {
System.out.println(menuMsg);
choice = sc.nextInt();
if(choice == 2)break;
if(choice != 1)continue;
System.out.println("첫번째 정수입력");
num1 = Integer.parseInt(sc.next());
System.out.println("연산입력");
oper = sc.next();
System.out.println("두번째 정수입력");
num2 = Integer.parseInt(sc.next());
switch(oper) {
case "+":
result = ""+(num1+num2);
break;
case "-":
result = ""+(num1-num2);
break;
case "*":
result = ""+(num1*num2);
break;
case "/":
if(num2 !=0 ) {
result = ""+(num1/num2);
}else {
result = "0으로 나눌 수 없습니다.";
}
break;
default:
result="사칙연산 외의 연산자를 사용할 수 없습니다.";
}
System.out.println(result);
}
}
}
728x90
'JAVA' 카테고리의 다른 글
삼항 연산자 연습 (0) | 2020.09.04 |
---|---|
10진수를 2,8,16진수로 변환하는 법 (0) | 2020.09.03 |
클래스 static (0) | 2020.09.03 |
[오류]Syntax error on token "class", @ expected (0) | 2020.08.31 |
클래스와 변수 (0) | 2020.08.31 |