小编Pun*_*hit的帖子

将数学方程的NSString转换为值

我想知道如何评估方程的字符串表示,就好像它是一个真实的方程:

if(@"15+14==23")
{
    //True statement...
}
else
{
    //False statement....
}
Run Code Online (Sandbox Code Playgroud)

我想返回"假",因为15 + 14不等于23.我怎么能让它工作?

cocoa cocoa-touch objective-c expression-evaluation nsstring

7
推荐指数
1
解决办法
2292
查看次数

用NSPredicate(Objective C,iOS)划分方程

以下是如何使用NSPredicate执行此操作的示例:

    NSPredicate *p = [NSPredicate predicateWithFormat:@"1+2==3"];
    NSLog(@"%d", [p evaluateWithObject:nil]);
    p = [NSPredicate predicateWithFormat:@"1+2==4"];
    NSLog(@"%d", [p evaluateWithObject:nil]);
Run Code Online (Sandbox Code Playgroud)

第一个NSLog产生1,因为1 + 2 == 3为真; 第二个产生0.

问题在于等式

1/3==2/3
Run Code Online (Sandbox Code Playgroud)

该陈述将是真的,但1/3不等于2/3我该如何解决这个问题?

objective-c ios

0
推荐指数
1
解决办法
262
查看次数