Пример #1
0
  private static void command(String input) throws Exception {
    if (input.matches(".*\\d+\\s+\\d+.*")) throw new Exception();
    input = input.replaceAll("\\s+", "");
    String result_string = InfixToPostfix.postfix(input);
    result_string = result_string.trim();

    long result = Calculate.cal(result_string);
    System.out.println(result_string);
    System.out.println(result);
  }
Пример #2
0
 public static void main(String args[]) {
   Calculate obj = new Calculate(); // child class instance
   parentCalculate pobj = new Calculate(); // child class instance in base class reference
   pobj.sum(12, 13);
   pobj.sum("java", "Training");
   pobj.sub(15, 5);
   obj.sum(10, 10, 10);
   obj.sum(20, 20);
   obj.sum(10.78F, 45.89F);
   obj.sub(10, 5); // auto type conversion
   obj.sum("hello", "world");
 }
Пример #3
0
 public Formula.Formula CalculateMulDiv(Formula.Formula data) {
   while (true) {
     try {
       Operator.OperatorCode[] MulDiv = new Operator.OperatorCode[2];
       MulDiv[0] = Operator.OperatorCode.Mul;
       MulDiv[1] = Operator.OperatorCode.Div;
       int Index = FindFirst(data, MulDiv);
       Value value =
           Calculate.CalculateValue(
               data.GetData()[Index - 1].GetNumber(),
               data.GetData()[Index].GetNumber(),
               data.GetData()[Index].GetOperator_OperatorCode());
       // i sets the first operator in + so Index will least be 1
       data = DeleteIndexWriteValue(Index, value, data);
     } catch (Exception e) {
       return data;
     }
   }
 }