编写一个函数sabc(),根据给定的三角形三条边长a,b,c,返回三角形的面积.
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/11 04:33:05
![编写一个函数sabc(),根据给定的三角形三条边长a,b,c,返回三角形的面积.](/uploads/image/z/11459696-32-6.jpg?t=%E7%BC%96%E5%86%99%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0sabc%EF%BC%88%EF%BC%89%2C%E6%A0%B9%E6%8D%AE%E7%BB%99%E5%AE%9A%E7%9A%84%E4%B8%89%E8%A7%92%E5%BD%A2%E4%B8%89%E6%9D%A1%E8%BE%B9%E9%95%BFa%2Cb%2Cc%2C%E8%BF%94%E5%9B%9E%E4%B8%89%E8%A7%92%E5%BD%A2%E7%9A%84%E9%9D%A2%E7%A7%AF.)
编写一个函数sabc(),根据给定的三角形三条边长a,b,c,返回三角形的面积.
编写一个函数sabc(),根据给定的三角形三条边长a,b,c,返回三角形的面积.
编写一个函数sabc(),根据给定的三角形三条边长a,b,c,返回三角形的面积.
用海伦公式比较简单.不知道你要用什么语言编写?我简单写一下C语言的:
double sabc(double a,double b,double c)
{
double p,s;
p=(a+b+c)/2;
s=squrt(p*(p-a)*(p-b)*(p-c));
return s;
}
#include
int main (void)
{
float a,b,c,s,area;
printf("a,b,c:");
scanf("%f,%f,%f;"&a,&b,&c);
s=0.5*(a+b+c);
if(a+b>c&&a+c>b&&b+c>a)
{
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("%f\n",area);
}
else
return 0
}
%let a=1;
%let b=1;
%let c=1;
data a;
if &a le 0 or &b le 0 or &c le 0 or &a+&b le &c or &b+&c le &a or &a+&c le &b then;
s=0;
p=(&a+&b+&c)/2;
s=sqrt(p*(p-&a)*(p-&b)*(p-&c)...
全部展开
%let a=1;
%let b=1;
%let c=1;
data a;
if &a le 0 or &b le 0 or &c le 0 or &a+&b le &c or &b+&c le &a or &a+&c le &b then;
s=0;
p=(&a+&b+&c)/2;
s=sqrt(p*(p-&a)*(p-&b)*(p-&c));
put;
run;闲来无事,这个是sas的,其中的abc之后等号的值可以任意替换,加进去一段语句,保证三个数字的值可以构成三角形
收起