C# 删除减号的数学函数

C# 删除减号的数学函数,c#,math,numbers,double,C#,Math,Numbers,Double,如果输入值是-0.088,我想从x=0.8这样取0.8--0.088,但结果是我想得到0.712,而不是0.888,因为负0.8-0.088 如何在不进行直接字符串处理的情况下从数字中删除减号,我可以为这种情况使用一些数学函数吗: double x1 = 0.8; double x2 = 0.8; double a = -0.088; double b = 0.088; x1 = (x1 - a); x2 = (x2 - b); C

如果输入值是
-0.088
,我想从
x=0.8
这样取
0.8--0.088
,但结果是我想得到
0.712
,而不是
0.888
,因为负
0.8-0.088

如何在不进行直接字符串处理的情况下从数字中删除减号,我可以为这种情况使用一些数学函数吗:

    double x1 = 0.8;
    double x2 = 0.8;
    double a = -0.088;
    double b = 0.088;

    x1 = (x1 - a); 
    x2 = (x2 - b); 

    Console.WriteLine("0.8 minus -0.088 equals to [ " + x1 + 
                 " ]\r\n0.8 minus 0.088 equals to [ " + x2 + " ]");
结果:

 0.8 minus -0.088 equals to [ 0.888 ]
 0.8 minus 0.088 equals to [ 0.712 ]
预期结果:

0.8 minus -0.088 equals to [ 0.712 ]
0.8 minus 0.088 equals to [ 0.712 ]

删除负号对应于..的数学概念。NET实现此功能的方法是:


删除负号对应于..的数学概念。NET实现此功能的方法是:


不过,这在数学上是正确的。执行
0.8--0.088
,将导致
0.8+0.088
。在减去它们之前,尝试使用
Math.Abs
。请参阅:

这将返回您想要的结果


希望有帮助

然而,这在数学上是正确的。执行
0.8--0.088
,将导致
0.8+0.088
。在减去它们之前,尝试使用
Math.Abs
。请参阅:

这将返回您想要的结果


希望有帮助

@MikeWodarczyk这是一个
c
问题,而不是
c/c++
@MikeWodarczyk这是一个
c
问题,而不是
c/c++
x1 = (x1 - Math.Abs(a)); 
  x1 = (x1 - Math.Abs(a)); 
  x2 = (x2 - Math.Abs(b));