用java实现一个简单的多功能计算器,可以进行加、减、乘、除、三角函数、乘方、平方根及阶乘等运算。 2.除此之外,还可以进行清屏,程序可以关闭。
时间: 2024-09-10 18:19:27 浏览: 63
多功能实用计算器
在Java中实现一个简单的多功能计算器,我们可以创建一个Calculator类,包含各种基本算术操作以及一些额外功能如三角函数、乘方、平方根和阶乘。这里是一个基础版本的实现:
```java
import java.util.Scanner;
import Math.*;
public class Calculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
boolean running = true;
while (running) {
System.out.println("请输入要执行的操作(如+,-,*,/,sin,cos,tan,pow,sqrt,fact,clear,cancel):");
String input = scanner.nextLine();
if ("clear".equals(input)) {
System.out.println("\n屏幕已清空.");
continue;
} else if ("cancel".equals(input)) {
System.out.println("操作已取消.");
break;
} else {
try {
double result = performMathOperation(input, scanner.nextDouble());
System.out.printf("结果: %.2f\n", result);
} catch (Exception e) {
System.out.println("输入无效,请输入正确的数学表达式或选择一个操作.");
}
}
}
scanner.close();
System.out.println("计算器已关闭.");
}
private static double performMathOperation(String operation, double num) throws Exception {
switch (operation) {
case "+":
return num + num;
case "-":
return num - num;
case "*":
return num * num;
case "/":
if (num != 0)
return num / num;
else
throw new Exception("除数不能为零.");
case "sin":
return Math.sin(num);
case "cos":
return Math.cos(num);
case "tan":
return Math.tan(num);
case "pow":
return Math.pow(num, num);
case "sqrt":
return Math.sqrt(num);
case "fact":
return factorial(num);
default:
throw new Exception("未知的操作符.");
}
}
// 计算阶乘
private static int factorial(int n) {
if (n == 0 || n == 1)
return 1;
else
return n * factorial(n - 1);
}
}
```
阅读全文