c++ - 在 C++ 代码中询问以提示用户输入函数表达式

标签 c++ function input

提示用户输入函数表达式的 C++ 代码。
我尝试编写一个代码,在 RUN 之后的界面要求我编写函数的表达式,如 pow(x,2)+5 和程序来读取它并用它的数学表达式理解它。
因此,改为从头声明:

double f(double x) {   pow(x,2)+5;
} 
我想要这样的东西:
#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    int n,i;        //n is for subintervals and i is for loop
    double a,b,h,sum=0,integral;  
    double f(double x)  
    cout<<"Enter the expression of the function f(x)=";  // I will answer writing "pow(x,2)+5"
    cin>>f;
我怎么能做到这一点?

最佳答案

可以拆分表达式 来自用户通过标准输入,如 string .用户写string你的代码会解析它。对于 解析器 您可以使用 调车码算法 : https://en.wikipedia.org/wiki/Shunting-yard_algorithm
您可以查看这个 github 页面( 解析表达式语法模板库 ):https://github.com/taocpp/PEGTL

关于c++ - 在 C++ 代码中询问以提示用户输入函数表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63082599/

相关文章:

php - 从输入(datetime_local)字段进行MYSQL查询

android - 数字输入以找出用户愿意支付的费用

c++ - 保留 vector 是线程安全的吗?

ios - 我可以在 Swift 中打印函数类型吗?

C函数的隐式声明

c++ - 在函数c++中调用函数

c++ - 如何使用 std::make_heap

c++ - 如何制作一个将函数包装在 noexcept 可检测、可调用对象中的类模板,以用作 std::unique_ptr 自定义删除器?

c++ - SIGINT 正常关闭

c# - 当用户输入是字符串并且它应该是 int.tryparse 的整数时,如何阻止 c# 崩溃?