游客 Signup | Login
中文 | En

1442 - C语言-宏面积

三角形面积=SQRT(S*(S-a)*(S-b)*(S-c)) 其中S=(a+b+c)/2,a、b、c为三角形的三边。 定义两个带参的宏,一个用来求area, 另一个宏用来求S。 写程序,在程序中用带实参的宏名来求面积area。

Input

a b c三角形的三条边,可以是小数。

Output

三角形面积,保留3位小数

Examples

Input

3 4 5

Output

6.000

Solution C

#include <stdio.h>
#include <math.h>
int main ()
{
 float a,b,c,area,s;
 scanf("%f%f%f",&a,&b,&c);
 s=(a+b+c)/2.0;
 area=sqrt(s*(s-a)*(s-b)*(s-c));
 printf("%.3f",area);
 return 0;
}

Solution C++

#include "stdio.h"
#include "math.h"
#define zc(a,b,c) s=(a+b+c)/2;
#define area(a,b,c,s) ar=sqrt(s*(s-a)*(s-b)*(s-c)); 
int main(int argc, char* argv[])
{ 
	double a,b,c,s,ar;
  while(~scanf("%lf%lf%lf",&a,&b,&c))
  {
     zc(a,b,c);
	 area(a,b,c,s);
   printf("%.3lf\n",ar);
  }  
	return 0;
}

Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题