编写 c++ 程序以求解 e^(x/2)=2sin(x) 从 0<X<2 的方程
Write c++ program to solve eq of e^(x/2)=2sin(x) from 0<X<2
这就是我到目前为止所做的。我无法获得第二个根(解决方案)。一旦我得到第一个答案,我不知道该怎么做才能继续循环。请帮助我。
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x, y, y0;
double dx = 0.01;
const double EulerConstant = std::exp(1.0);
x =dx;
y= sqrt(pow(EulerConstant,x))-2*sin(x);
y0=y;
while (y*y0>0)
{
y0=y;
x += dx;
y = sqrt(pow(EulerConstant,x))-2*sin(x);
}
cout << "x =" << x << "n";
system("pause");
return 0;
}
有了这个等式,你就会遇到一个精度问题。 此等式的零点接近 x = 0.90 和 x = 1.32,但还不够接近,无法与 epsilon
值进行比较,为您提供任何一个的良好值(示例)。 您既不需要增加步长的精度(例如 0.0001 - 我已经在示例中完成了),也不需要存储每次迭代的值并在值从负数切换到正数(或正数到负数)时进行近似值。
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- C++,系统无法执行指定的程序
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- 在VS代码中交叉编译Windows与Linux上的MinGW的SDL程序
- C++ Windows 驱动程序MSB3030无法复制该文件,因为它找不到
- 重载操作程序时出错>>用于类中的字符串 memebr
- 获取日期异步信号安全吗?如果在信号处理程序中使用,它会导致死锁吗
- 试图在visual studio上用C++创建一个桌面应用程序
- 模板元程序查找相似的连续类型名称
- 请解释这句话(cout<<1+int((a<b)^((b-a)&1) )<<endl
- FFmpeg:制作一个应用程序比直接使用ffmepg更好吗
- 如何通过cpp程序运行shell脚本
- 有没有什么方法可以使用一个函数中定义的常量变量,也可以由c++中同一程序中的其他函数使用
- 呼叫运营商<<临时
- IPC使用多个管道和分支进程来运行Python程序
- 如何将c++程序的一些输出传递给shell,以便在shell中使用
- 使用C++程序合并排序没有得到正确的输出
- 基于boost的程序的静态链接——zlib问题
- 程序崩溃并显示"std::out_of_range"错误
- 在C应用程序中运行C++(带有STL)函数