Ich verwende Objective-C und ich versuche eine Gleichung festzulegen, die in einem NSString
gespeichert wird, um ausgewertet und in einem NSInteger
gespeichert zu werden.
Ähnliches wie folgt:
%Vor% und dann auswerten, um 31 zu werden und es in NSInteger
zu speichern. irgendwelche Ideen wie man das macht?
Sie wollen den wunderbaren, erstaunlichen und fabelhaften GCMathParser, den Sie (kostenlos) auf apptree.net finden: Ссылка genau das, was Sie fragen, und erlaubt Ihnen sogar, variable Substitutionen zu machen (3x + 42, evaluieren mit x = 7). Es hat sogar Unterstützung für mathematische Funktionen wie sin (), cos (), tan (), ihre Inversen, dtor (), log (), ....
Bearbeiten viel später ...
Obwohl GCMathParser ziemlich großartig ist, hat es den Fehler, nicht erweiterbar zu sein. Wenn Sie also eine Funktion benötigen, die sie nicht nativ unterstützt, dann ist es schade. Also entschloss ich mich, etwas dagegen zu unternehmen und kam mit einem völlig nativen mathematischen Parser und Evaluator auf: Ссылка
Ich benutze dies auf dem iPhone, um eine Gleichung auszuwerten. Es ist einfacher, Sie müssen kein NSPredicate erstellen, nur die NSExpression:
%Vor%Und hier ist die Dokumentation zu den kompatiblen analysierbaren Funktionen: " BNF Definition von Kakao Prädikaten "
Code geteilt in Gist hier
Tags und Links objective-c iphone