有关于牛顿迭代法/*已知三角形的三边长为a,b,c, 求三角形的面积公式为: area=sqrt(s(s-a)(s-b)
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/08 16:51:39
有关于牛顿迭代法
/*已知三角形的三边长为a,b,c, 求三角形的面积公式为: area=sqrt(s(s-a)(s-b)(s-c)),
其中, s=(a+b+c)/2.计算面积时,必须用牛顿迭代公式求一个数的平方根.
试建立一个类Tri, 给出三角形的三边长,求三角形的面积.
规定只能调用类的成员函数求平方根(不能用库函数 sqrt) .具体要求如下:
(1)私有数据成员: double a,b,c;
(2)公有成员函数
Tri(double a1,double b1, double c1);构造函数,初始化三边长
double sqroot(double m);用牛顿迭代公式求一个数的平方根
double farea(); 求三角形的面积,调用sqroot函数
void print();输出三角形的三边长,求出并输出三角形的面积.
(3) 在主函数中完成对该类测试,定义一个对象 san,三边长分别为3,4,5.调用print()函数输出,程序正确的运行结果是:
a=3,b=4,c=5
area=6
*/
#include
#include
using namespace std;
class Tri
{public:
Tri(double a1,double b1,double c1):a(a1),b(b1),c(c1){}
double sqroot(double m)//f(x)=x^2-m=0
{double a=m/2,b;
do
{b=a;
a=(b*b+m)/(2*b);
}while(fabs(a-b)>0.000001);
return a;
}
double farea()
{double s,l;
s=(a+b+c)/2;
l=s(s-a)(s-b)(s-c);
return sqroot(l);}
void print()
{cout
/*已知三角形的三边长为a,b,c, 求三角形的面积公式为: area=sqrt(s(s-a)(s-b)(s-c)),
其中, s=(a+b+c)/2.计算面积时,必须用牛顿迭代公式求一个数的平方根.
试建立一个类Tri, 给出三角形的三边长,求三角形的面积.
规定只能调用类的成员函数求平方根(不能用库函数 sqrt) .具体要求如下:
(1)私有数据成员: double a,b,c;
(2)公有成员函数
Tri(double a1,double b1, double c1);构造函数,初始化三边长
double sqroot(double m);用牛顿迭代公式求一个数的平方根
double farea(); 求三角形的面积,调用sqroot函数
void print();输出三角形的三边长,求出并输出三角形的面积.
(3) 在主函数中完成对该类测试,定义一个对象 san,三边长分别为3,4,5.调用print()函数输出,程序正确的运行结果是:
a=3,b=4,c=5
area=6
*/
#include
#include
using namespace std;
class Tri
{public:
Tri(double a1,double b1,double c1):a(a1),b(b1),c(c1){}
double sqroot(double m)//f(x)=x^2-m=0
{double a=m/2,b;
do
{b=a;
a=(b*b+m)/(2*b);
}while(fabs(a-b)>0.000001);
return a;
}
double farea()
{double s,l;
s=(a+b+c)/2;
l=s(s-a)(s-b)(s-c);
return sqroot(l);}
void print()
{cout
//l=s(s-a)(s-b)(s-c);
//.
l=s*(s-a)*(s-b)*(s-c);//是想相乘吧?
//.
l=s*(s-a)*(s-b)*(s-c);//是想相乘吧?
有关于牛顿迭代法/*已知三角形的三边长为a,b,c, 求三角形的面积公式为: area=sqrt(s(s-a)(s-b)
c语言作业:1.已知三角形的三边长A,B,C,计算三角形面积的公式为 S=1/2(a+b+c),area=根号s(s-a
求三角形面积,下面编的c语言是什么意思?s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)
C语言编程,三角形面积的海伦公式为:area=开根号[s(s-a)(s-b)(s-c],其中s=(a+b+c)/2,a、
求三角型面积公式推导 area=sqrt(s*(s-a)*(s-b)*(s-c))
已知三角形ABC的三边长为a、b、c和面积S满足S=a ²-(b-c) ²,且b+c=8,求S的最大
已知三角形ABC的三边长a、b、c和面积S满足S=a2-(b-c)2,且b+c=8,求S的最大值.
编程 输入三角形边长,求面积 请详细解释下{s=1/2*(a+c+b); area=sqrt (s*(s-a)*(s-b
已知三角形ABC的三边长a`b`c和面积S=a^2-(b-c)^2,且b+c=8,求S的最大值?
已知三角形ABC的三边分别为a,b,c且周长为6,a,b,c成等比数列,求三角形ABC的面积S的最大值
已知a,b,c是三角形ABC的三边,面积s=(a-b+c)(a+b-c)求cosA
给出三角形的三边长,求三角形面积.给出三角形的三边长,求三角形面积.其中s=(a+b+c)/2 要用数学函数要