# Math.Abs Method (Single)

.NET Framework 3.0
Returns the absolute value of a single-precision floating-point number.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)

## Syntax

```public static float Abs (
float value
)
```
```public static float Abs (
float value
)
```
```public static function Abs (
value : float
) : float
```
```Not applicable.
```

#### Parameters

value

A number in the range MinValuevalueMaxValue.

#### Return Value

A single-precision floating-point number, x, such that 0 x MaxValue.

## Remarks

If value is equal to NegativeInfinity or PositiveInfinity, the return value is PositiveInfinity. If value is equal to NaN, the return value is NaN.

## Example

The following code sample uses Abs to assist in the computation of the inner angles of a given trapezoid.

```/// <summary>
/// The following class represents simple functionallity of the Trapezoid
/// </summary>
class MathTrapezoidSample
{
private double m_longBase;
private double m_shortBase;
private double m_leftLeg;
private double m_rightLeg;

public MathTrapezoidSample(double longbase, double shortbase, double leftLeg, double rightLeg)
{
m_longBase = Math.Abs(longbase);
m_shortBase = Math.Abs(shortbase);
m_leftLeg = Math.Abs(leftLeg);
m_rightLeg = Math.Abs(rightLeg);
}

private double GetRightSmallBase()
{
return (Math.Pow(m_rightLeg,2.0) - Math.Pow(m_leftLeg,2.0) + Math.Pow(m_longBase,2.0) + Math.Pow(m_shortBase,2.0) - 2* m_shortBase * m_longBase)/ (2*(m_longBase - m_shortBase));
}

public double GetHeight()
{
double x = GetRightSmallBase();
return Math.Sqrt(Math.Pow(m_rightLeg,2.0) - Math.Pow(x,2.0));
}

public double GetSquare()
{
return GetHeight() * m_longBase / 2.0;
}

{
double sinX = GetHeight()/m_leftLeg;
return Math.Round(Math.Asin(sinX),2);
}

{
double x = GetRightSmallBase();
double cosX = (Math.Pow(m_rightLeg,2.0) + Math.Pow(x,2.0) - Math.Pow(GetHeight(),2.0))/(2*x*m_rightLeg);
return Math.Round(Math.Acos(cosX),2);
}

public double GetLeftBaseDegreeAngle()
{
double x = GetLeftBaseRadianAngle() * 180/ Math.PI;
return Math.Round(x,2);
}

public double GetRightBaseDegreeAngle()
{
double x = GetRightBaseRadianAngle() * 180/ Math.PI;
return Math.Round(x,2);
}

static void Main(string[] args)
{
MathTrapezoidSample trpz = new MathTrapezoidSample(20.0, 10.0, 8.0, 6.0);
Console.WriteLine("The trpezoid's bases are 20.0 and 10.0, the trapezoid's legs are 8.0 and 6.0");
double h = trpz.GetHeight();
Console.WriteLine("Trapezoid height is: " + h.ToString());
Console.WriteLine("Trapezoid left base angle is: " + dxR.ToString() + " Radians");
Console.WriteLine("Trapezoid right base angle is: " + dyR.ToString() + " Radians");
double dxD = trpz.GetLeftBaseDegreeAngle();
Console.WriteLine("Trapezoid left base angle is: " + dxD.ToString() + " Degrees");
double dyD = trpz.GetRightBaseDegreeAngle();
Console.WriteLine("Trapezoid left base angle is: " + dyD.ToString() + " Degrees");
}
}

```
```/// <summary>
/// The following class represents simple functionallity of the Trapezoid
/// </summary>
class MathTrapezoidSample
{
private double mLongBase;
private double mShortBase;
private double mLeftLeg;
private double mRightLeg;
public MathTrapezoidSample(double longBase, double shortBase,
double leftLeg, double rightLeg)
{
mLongBase = System.Math.Abs(longBase);
mShortBase = System.Math.Abs(shortBase);
mLeftLeg = System.Math.Abs(leftLeg);
mRightLeg = System.Math.Abs(rightLeg);
} //MathTrapezoidSample

private double GetRightSmallBase()
{
return (System.Math.Pow(mRightLeg, 2.0)
- System.Math.Pow(mLeftLeg, 2.0)
+ System.Math.Pow(mLongBase, 2.0)
+ System.Math.Pow(mShortBase, 2.0)
- 2 * mShortBase * mLongBase) / (2 * (mLongBase - mShortBase));
} //GetRightSmallBase

public double GetHeight()
{
double x = GetRightSmallBase();
return System.Math.Sqrt(System.Math.Pow(mRightLeg, 2.0)
- System.Math.Pow(x, 2.0));
} //GetHeight

public double GetSquare()
{
return GetHeight() * mLongBase / 2.0;
} //GetSquare

{
double sinX = GetHeight() / mLeftLeg;
return System.Math.Round(System.Math.Asin(sinX), 2);

{
double x = GetRightSmallBase();
double cosX = (System.Math.Pow(mRightLeg, 2.0)
+ System.Math.Pow(x, 2.0)
- System.Math.Pow(GetHeight(), 2.0)) / (2 * x * mRightLeg);
return System.Math.Round(System.Math.Acos(cosX), 2);

public double GetLeftBaseDegreeAngle()
{
double x = GetLeftBaseRadianAngle() * 180 / System.Math.PI;
return System.Math.Round(x, 2);
} //GetLeftBaseDegreeAngle

public double GetRightBaseDegreeAngle()
{
double x = GetRightBaseRadianAngle() * 180 / System.Math.PI;
return System.Math.Round(x, 2);
} //GetRightBaseDegreeAngle

public static void main(String[] args)
{
MathTrapezoidSample trpz =
new MathTrapezoidSample(20.0, 10.0, 8.0, 6.0);
Console.WriteLine("The trpezoid's bases are 20.0 and 10.0,"
+ " the trapezoid's legs are 8.0 and 6.0");
double h = trpz.GetHeight();
Console.WriteLine("Trapezoid height is: "
+ System.Convert.ToString(h));
Console.WriteLine("Trapezoid left base angle is: "
Console.WriteLine("Trapezoid right base angle is: "
double dxD = trpz.GetLeftBaseDegreeAngle();
Console.WriteLine("Trapezoid left base angle is: "
+ System.Convert.ToString(dxD) + " Degrees");
double dyD = trpz.GetRightBaseDegreeAngle();
Console.WriteLine("Trapezoid left base angle is: "
+ System.Convert.ToString(dyD) + " Degrees");
} //main
} //MathTrapezoidSample

```

## Platforms

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

## Version Information

#### .NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

#### .NET Compact Framework

Supported in: 2.0, 1.0

#### XNA Framework

Supported in: 1.0