社区
C语言
帖子详情
一道关于算法的题!(在线等,谢谢!)
zengjianping
2004-04-11 04:33:05
用二分法求解f(x)=x^3-2x-5=0在{2,3)内的实根
要求输出第十到第十五次的划分区间急解
...全文
54
2
打赏
收藏
一道关于算法的题!(在线等,谢谢!)
用二分法求解f(x)=x^3-2x-5=0在{2,3)内的实根 要求输出第十到第十五次的划分区间急解
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
W的永动机
2004-04-11
打赏
举报
回复
太麻烦了把
rorot
2004-04-11
打赏
举报
回复
#include "math.h"
#include "stdio.h"
/*用二法计算非线性方程的实根*/
int BinSearchRoot(a,b,h,eps,x,m)
int m;
/*
a 要求的根的下界
b 要求的根的上界,即:所求的根落在区间 [a,b]之内
h 递进的步长
eps 精度
x 根的值
m 预计的根的个数
*/
double a,b,h,eps,x[];
{
extern double Equation(); /*要求解的非线性方程*/
int n,js;
double z,y,z1,y1,z0,y0;
n=0; z=a; y=Equation(z);
while ((z<=b+h/2.0)&&(n!=m)) /*对给定步长的子区间进行搜索*/
{
if (fabs(y)<eps) /*当前的判定点是方程的根*/
{
n=n+1;
x[n-1]=z;
z=z+h/2.0;
y=Equation(z);
}
else /*当前点不是方程的根*/
{
z1=z+h;
y1=Equation(z1);
if (fabs(y1)<eps) /*下一个点是方程的根*/
{
n=n+1;
x[n-1]=z1;
z=z1+h/2.0;
y=Equation(z);
}
else if (y*y1>0.0) /*该区间内无根*/
{ y=y1; z=z1;}
else /*该区间内有根*/
{
js=0;/*标志,0表示未找到根,1表示已经确定了根*/
while (js==0)
{
if (fabs(z1-z)<eps) /*区间的长度小于给定的精度,可以当作
已经找到了根*/
{
n=n+1;
x[n-1]=(z1+z)/2.0; /*把区间的中位值作为根*/
z=z1+h/2.0; /*把寻找的位置放到下一个区间内*/
y=Equation(z);
js=1; /*在当前区间内已经找到了根*/
}
else /*区间比给定的精度大,则进行二分*/
{
z0=(z1+z)/2.0; /*区间二分*/
y0=Equation(z0);
if (fabs(y0)<eps) /*z0位置为根*/
{
x[n]=z0;
n=n+1;
js=1;
z=z0+h/2.0;
y=Equation(z);
}
else if ((y*y0)<0.0) /*[z,z0]内有根*/
{ z1=z0; y1=y0;}
else { z=z0; y=y0;}
}
}
}
}
}
return(n); /*返回根的个数*/
}
main()
{
int i,n;
static int m=6;
static double x[6];
n=BinSearchRoot(-2.0,5.0,0.2,0.000001,x,m);
printf("M=%d\n",n); /*输出根的个数*/
for (i=0; i<=n-1; i++)
printf("x(%d)=%13.7e\n",i,x[i]);
printf("\n");
}
double Equation(x)
double x;
{
double z;
z=(((((x-5.0)*x+3.0)*x+1.0)*x-7.0)*x+7.0)*x-20.0;
return(z);
}
内存分析工具 MAT 的使用
1 内存泄漏的排查方法 Dalvik Debug Monitor Server (DDMS) 是 ADT 插件的一部分,其中有两项功能可用于内存检查 : · heap 查看堆的分配情况 · allocation tracker 跟踪内存分配情况 DDMS 这两项功能有助于找到内存泄漏的操作行为。 Eclipse Memory Analysis Tools
jvm内存快照分析工具mat的使用
Overview(概览):显示堆内存总量、类数量、对象数量等基本信息,以及泄漏嫌疑报告入口。Histogram(直方图):按类名统计对象数量和内存占用(重点关注内存占比高的类)。Dominator Tree(支配树):展示对象间的引用关系,识别 “支配” 大量内存的对象(即若该对象被回收,可释放的内存)。Leak Suspects(泄漏嫌疑):自动分析并列出可能的内存泄漏点及详细描述。
使用 Memory Analyzer ( MAT ) 工具分析内存 (一)
使用 SDK 中的 hprof-conv.exe 工具 , 可以将上述 hprof 文件转为 MAT 工具可以识别的文件 , 工具所在目录的路径为 platform-tools , 将该目录配置到环境变量中 , 即可在命令窗口使用该工具。执行如下命令 : 将 memory-XXX.hprof 内存快照文件转换为 MAT 格式的内存文件 , 最终存储在 mat.hprof 文件中 , 其中加入 -z 选项 , 表示排除非 APP 内存信息;
分析android程序的内存 mat,详解android内存分析工具Mat的使用教程
Android应用开发过程中,或许稍一不小心便会出现内存泄露,那么我们该怎样才能检测到我们的应用是否存在内存泄露的问
题
或者说该使用什么样的工具来检测我们的应用是否存在内存泄露呢?而MAT就是一款非常好用的分析应用内存使用情况的工具,使用起来也非常简单,那么本文就详细介绍android内存分析工具Mat。1 内存泄漏的排查方法Dalvik debug Monitor Server (DDMS) 是 ...
java mat 内存分析_JAVA语言内存分析工具 MAT 的使用
1内存泄漏的排查方法Dalvik Debug Monitor Server (DDMS)是ADT插件的一部分,其中有两项功能可用于内存检查:·heap查看堆的分配情况·allocation tracker跟踪内存分配情况DDMS这两项功能有助于找到内存泄漏的操作行为。Eclipse Memory Analysis Tools (MAT)是一个分析Java堆数据的专业工具,用它可以定位内存泄漏的原...
C语言
70,040
社区成员
243,237
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章