Comment évaluer des expressions mathématiques personnalisées en C sans intégration Python
L'évaluation d'expressions mathématiques complexes en C peut s'avérer difficile sans bibliothèques externes ni environnements d'exécution . Cependant, la bibliothèque ExprTk fournit une solution élégante et efficace.
Considérons un exemple d'expression :
<code class="text">3 + sqrt(5) + pow(3, 2) + log(5)</code>
En utilisant ExprTk, nous pouvons aborder ce problème de manière simple :
<code class="cpp">#include <cstdio> #include <string> #include "exprtk.hpp" int main() { // Define types for expression and parser typedef exprtk::expression<double> expression_t; typedef exprtk::parser<double> parser_t; // Store the expression as a string std::string expression_string = "3 + sqrt(5) + pow(3,2) + log(5)"; // Instantiate expression and parser objects expression_t expression; parser_t parser; // Compile the expression string if (parser.compile(expression_string, expression)) { // Evaluate the expression double result = expression.value(); // Print the result printf("Result: %19.15f\n", result); } else { // Handle compilation errors printf("Error in expression\n."); } return 0; }</code>
Ce code :
En tirant parti la bibliothèque ExprTk, vous pouvez gérer efficacement l'évaluation d'expressions mathématiques complexes en C, réduisant ainsi le besoin d'intégration Python.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!