实现基本数学运算、函数等功能:加、减、乘、除、阶乘、正弦、余弦和指数运算的计算器
时间: 2023-07-10 13:36:59 浏览: 94
可以实现基本功能的计算器
好的,我可以为您提供一个实现基本数学运算、函数等功能的Java计算器示例代码。以下是代码:
```java
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("欢迎使用计算器,请输入表达式(例如:2 + 3 * sin(30)):");
String expression = scanner.nextLine();
double result = calculate(expression);
System.out.println("计算结果为:" + result);
}
public static double calculate(String expression) {
String[] tokens = expression.split(" ");
double num1 = Double.parseDouble(tokens[0]);
for (int i = 1; i < tokens.length; i += 2) {
char operator = tokens[i].charAt(0);
double num2 = Double.parseDouble(tokens[i + 1]);
switch(operator) {
case '+':
num1 += num2;
break;
case '-':
num1 -= num2;
break;
case '*':
num1 *= num2;
break;
case '/':
num1 /= num2;
break;
case '^':
num1 = Math.pow(num1, num2);
break;
case '!':
num1 = factorial(num1);
break;
case 's':
num1 = Math.sin(Math.toRadians(num2));
break;
case 'c':
num1 = Math.cos(Math.toRadians(num2));
break;
case 'e':
num1 = Math.exp(num2);
break;
default:
System.out.println("输入有误!");
return Double.NaN;
}
}
return num1;
}
public static double factorial(double num) {
if (num == 0 || num == 1) {
return 1;
}
return num * factorial(num - 1);
}
}
```
您可以将这段代码复制粘贴到您的Java IDE中并运行它。它将提示您输入表达式,例如:2 + 3 * sin(30),然后输出计算结果。该计算器支持加、减、乘、除、指数运算、阶乘、正弦、余弦和指数运算。希望这个示例对您有帮助!
阅读全文