一、实验目的
学会用Java编写简单的四则运算。
二、实验原理及基本技术路线图(方框原理图)
通过所学知识编写程序,实现用户输入一个算式,通过运算输出结果。
三、所用仪器、材料(设备名称、型号、规格等)
Eclipse不限版本、JDK不限版本、配置环境变量
四、实验方法、步骤
思路分析:
首先拿到一个表达式后,我们如果按照人的计算方式,
有括号
在有括号的情况下,先计算得出括号中的结果。
没有括号
运算按照 先乘除,后加减进行。
1.没有括号的表达式实现
1.1.遍历运算符,如果运算符右边没有数字则报错,运算符左右都有数字则取出运算符左右的数字进行运算,然后将结果放回(当前索引位置)
2.有括号的表达式的实现
2.1.找到最内侧的括号内表达式,按照无括号的方法进行计算,将计算结果替换该括号表达式的位置,此时得到新的表达式,再继续递归调用当前方法。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
public class SimpleCompute {
public static void main(String[] args) {
// Define data types
BufferedReader reader = null;
InputStreamReader inputStreamReader = null;
try {
// Get user input
System.out.println("Please enter expression: or enter # to end the operation! ");// Prompt the user for an expression
inputStreamReader = new InputStreamReader(System.in);// Read input from the console
reader = new BufferedReader(inputStreamReader);
String str = reader.readLine(); // Read the information entered by the user
while (!str.equals("#")) {
System.out.println("The result of operation is:" + opt(str) + "");
System.out.println("Please enter expression: or enter # to end the operation! ")