计算三角形的面积

时间:2012-06-08 11:22:50

标签: c#

我正在使用此代码计算三角形的面积,值为2,2和1.当我在口袋计算器中进行计算时,我得到0.97,但在C#中它是0.我猜它有一些东西关于小数舍入,但我已经改变了i和up的最后一个值,但结果仍然是0!我究竟做错了什么?帮助精确!谢谢!

double i = (valueA + valueB + valueC) / 2;
return Math.Round(Math.Sqrt(i * (i - valueA) * (i - valueB) * (i - valueC)),1);

2 个答案:

答案 0 :(得分:8)

除以2.02d2D

原因:整数除法仅给出整数部分并删除小数部分。

2是整数。 2.0是双倍价值。

double i = (valueA + valueB + valueC) / 2.0;

OR

double i = (valueA + valueB + valueC) / 2d; 

OR

double i = (valueA + valueB + valueC) / 2D;

第二行保持不变

return Math.Round(Math.Sqrt(i * (i - valueA) * (i - valueB) * (i - valueC)),1);

答案 1 :(得分:2)

请尝试(valueA + valueB + valueC) / 2.0

相关问题