具有 3 个参数的函数:Return 应用运算符后的结果,即 (5, 7, '+') = 35

Function with 3 arguments: Return result after applying operator i.e. (5, 7, '+') = 35

希望我的标题能解释它,但我需要一个函数,它将接受 3 个参数(两个数字和一个运算符 [*、+、/、-]),然后计算结果。

像这样:

function evaluateExpression (firstNum, secondNum, operator) {
    ...
    return ...;
}

evaluateExpression (35, 7, '/'); // should return 5

伪代码:

evaluateExpression( first, second, op ) :

    if op == "+" :
         return first + second

    else if op == "*" :
         return first * second

    ... etc

    else :
         return error

一种方式:

if (operator === "+") { return firstNum + secondNum };
if (operator === "-") { return firstNum - secondNum };
if (operator === "/") { return firstNum / secondNum }; 
if (operator === "*") { return firstNum * secondNum }; 
if (operator === "%") { return firstNum % secondNum }; 

另一种方式:

switch (operator) {
  case "+" : return firstNum + secondNum;
  case "-" : return firstNum - secondNum;
  case "/" : return firstNum / secondNum;
  case "*" : return firstNum * secondNum;
  case "%" : return firstNum % secondNum;
}

如果您使用的是javascript,这可能是另一种方式:

eval(firstNum + operator + secondNum);

即使在python中,您也可以使用eval 方法。只需将操作数转换为字符串并调用函数即可。

evaluateExpression(第一,第二,操作):

return eval(str(first) + op + str(second))