首页>Program>source

如何计算像 (a + b) ^ 2, sum((a + b) / 2)这样的公式 使用 NSExpression ? 我是 NSExpression的初学者

(a + b)^ 2如何在目标c中使用整个平方2。

最新回答
  • 1月前
    1 #

    NSExpression 不是通用数学表达式评估器.它应该与 NSPredicate一起使用 在核心数据查询中描述选择标准。

    objective

    NSExpression对于在目标c中评估数学表达式很有用。

    让我们看看如何使用NSExpression查找数字的标准偏差

    NSArray *arrNumbers = @[@3, @6, @3, @8, @4, @12, @9, @11];
    NSExpression *expression = [NSExpression expressionForFunction:@"stddev:" arguments:@[[NSExpression expressionForConstantValue:arrNumbers]]];
    id value = [expression expressionValueWithObject:nil context:nil];
    

    就这么简单。

    下面是按类别分组的功能列表。

    1)List of statistics methods

    average:
    sum:
    count:
    min:
    max:
    median:
    mode:
    stddev:
    

    2)Arithmetic functions

    add:to:
    from:subtract:
    multiply:by:
    divide:by:
    modulus:by:
    abs:
    sqrt:
    log:
    ln:
    raise:toPower:
    exp:
    

    3)Bounding functions

    ceiling:
    trunc:
    

    4)Random functions

    random
    random:
    

    5)Binary arithmetic functions

    bitwiseAnd:with:
    bitwiseOr:with:
    bitwiseXor:with:
    leftshift:by:
    rightshift:by:
    onesComplement:
    

    6)Date functions

    now
    

    7)String functions

    lowercase:
    uppercase:
    

    8)No-Op

    noindex:
    

  • 1月前
    2 #

    NSExpression非常适合评估数学表达式.它不仅限于核心数据查询,而且您不需要其他第三方库或编写自己的解析器即可将表达式作为字符串求值。

    实际回答(a + b)^ 2;)

    NSNumber *a = @4;
    NSNumber *b = @4;
    NSExpression *expression = [NSExpression expressionWithFormat:@"(%@ + %@)**2", a, b];
    NSNumber *result = [expression expressionValueWithObject:nil context:nil];
    NSLog(@"%@",result);
    

  • 1月前
    3 #

    NSExpression用于表示NSPredicate中的表达式.它不适用于像您这样的任务。

    实际上,您可以使用 NSExpression 计算公式值,但是这种用法非常有限.要评估任何数学表达式,您需要使用某种算法(例如,调车场)或仅重用此类库来构建字符串解析器。

  • c#:与Async回调方法中的UI线程进行交互?
  • 在C#中执行SQL语句?