首页 > 代码库 > C# Math类详细说明
C# Math类详细说明
1、Math.Cos(X)
函数中的X 都是指的“弧度”而非“角度”,弧度的计算公式为: 2*PI/360*角度,例如:X° 角度 的弧度为2*PI/360*X或者 Math.Cos(Math.PI * X° / 180)
Math.sin(x) x 的正玄值。返回值在 -1.0 到 1.0 之间;
Math.cos(x) x 的余弦值。返回的是 -1.0 到 1.0 之间的数;
2、其他方法说明
名称 | 说明 |
---|---|
Abs(Decimal) | 返回 Decimal 数字的绝对值。 |
Abs(Double) | 返回双精度浮点数字的绝对值。 |
Abs(Int16) | 返回 16 位有符号整数的绝对值。 |
Abs(Int32) | 返回 32 位有符号整数的绝对值。 |
Abs(Int64) | 返回 64 位有符号整数的绝对值。 |
Abs(SByte) | 返回 8 位有符号整数的绝对值。 |
Abs(Single) | 返回单精度浮点数字的绝对值。 |
Acos | 返回余弦值为指定数字的角度。 |
Asin | 返回正弦值为指定数字的角度。 |
Atan | 返回正切值为指定数字的角度。 |
Atan2 | 返回正切值为两个指定数字的商的角度。 |
BigMul | 生成两个 32 位数字的完整乘积。 |
Ceiling(Decimal) | 返回大于或等于指定的十进制数的最小整数值。 |
Ceiling(Double) | 返回大于或等于指定的双精度浮点数的最小整数值。 |
Cos | 返回指定角度的余弦值。 |
Cosh | 返回指定角度的双曲余弦值。 |
DivRem(Int32, Int32, Int32) | 计算两个 32 位有符号整数的商,并通过输出参数返回余数。 |
DivRem(Int64, Int64, Int64) | 计算两个 64 位有符号整数的商,并通过输出参数返回余数。 |
Exp | 返回 e 的指定次幂。 |
Floor(Decimal) | 返回小于或等于指定小数的最大整数。 |
Floor(Double) | 返回小于或等于指定双精度浮点数的最大整数。 |
IEEERemainder | 返回一指定数字被另一指定数字相除的余数。 |
Log(Double) | 返回指定数字的自然对数(底为 e)。 |
Log(Double, Double) | 返回指定数字在使用指定底时的对数。 |
Log10 | 返回指定数字以 10 为底的对数。 |
Max(Byte, Byte) | 返回两个 8 位无符号整数中较大的一个。 |
Max(Decimal, Decimal) | 返回两个十进制数中较大的一个。 |
Max(Double, Double) | 返回两个双精度浮点数字中较大的一个。 |
Max(Int16, Int16) | 返回两个 16 位有符号的整数中较大的一个。 |
Max(Int32, Int32) | 返回两个 32 位有符号的整数中较大的一个。 |
Max(Int64, Int64) | 返回两个 64 位有符号的整数中较大的一个。 |
Max(SByte, SByte) | 返回两个 8 位有符号的整数中较大的一个。 |
Max(Single, Single) | 返回两个单精度浮点数字中较大的一个。 |
Max(UInt16, UInt16) | 返回两个 16 位无符号整数中较大的一个。 |
Max(UInt32, UInt32) | 返回两个 32 位无符号整数中较大的一个。 |
Max(UInt64, UInt64) | 返回两个 64 位无符号整数中较大的一个。 |
Min(Byte, Byte) | 返回两个 8 位无符号整数中较小的一个。 |
Min(Decimal, Decimal) | 返回两个十进制数中较小的一个。 |
Min(Double, Double) | 返回两个双精度浮点数字中较小的一个。 |
Min(Int16, Int16) | 返回两个 16 位有符号整数中较小的一个。 |
Min(Int32, Int32) | 返回两个 32 位有符号整数中较小的一个。 |
Min(Int64, Int64) | 返回两个 64 位有符号整数中较小的一个。 |
Min(SByte, SByte) | 返回两个 8 位有符号整数中较小的一个。 |
Min(Single, Single) | 返回两个单精度浮点数字中较小的一个。 |
Min(UInt16, UInt16) | 返回两个 16 位无符号整数中较小的一个。 |
Min(UInt32, UInt32) | 返回两个 32 位无符号整数中较小的一个。 |
Min(UInt64, UInt64) | 返回两个 64 位无符号整数中较小的一个。 |
Pow | 返回指定数字的指定次幂。 |
Round(Decimal) | 将小数值舍入到最接近的整数值。 |
Round(Double) | 将双精度浮点值舍入为最接近的整数值。 |
Round(Decimal, Int32) | 将小数值按指定的小数位数舍入。 |
Round(Decimal, MidpointRounding) | 将小数值舍入到最接近的整数。 一个参数,指定当一个值正好处于两个数中间时如何舍入这个值。 |
Round(Double, Int32) | 将双精度浮点值按指定的小数位数舍入。 |
Round(Double, MidpointRounding) | 将双精度浮点值舍入为最接近的整数。 一个参数,指定当一个值正好处于两个数中间时如何舍入这个值。 |
Round(Decimal, Int32, MidpointRounding) | 将小数值按指定的小数位数舍入。 一个参数,指定当一个值正好处于两个数中间时如何舍入这个值。 |
Round(Double, Int32, MidpointRounding) | 将双精度浮点值按指定的小数位数舍入。 一个参数,指定当一个值正好处于两个数中间时如何舍入这个值。 |
Sign(Decimal) | 返回表示数字符号的值。 |
Sign(Double) | 返回表示双精度浮点数字的符号的值。 |
Sign(Int16) | 返回表示 16 位有符号整数的符号的值。 |
Sign(Int32) | 返回表示 32 位有符号整数的符号的值。 |
Sign(Int64) | 返回表示 64 位有符号整数的符号的值。 |
Sign(SByte) | 返回表示 8 位有符号整数的符号的值。 |
Sign(Single) | 返回表示单精度浮点数字的符号的值。 |
Sin | 返回指定角度的正弦值。 |
Sinh | 返回指定角度的双曲正弦值。 |
Sqrt | 返回指定数字的平方根。 |
Tan | 返回指定角度的正切值。 |
Tanh | 返回指定角度的双曲正切值。 |
Truncate(Decimal) | 计算指定小数的整数部分。 |
Truncate(Double) | 计算指定双精度浮点数的整数部分。 |
3、MSDN示例
/// <summary>/// The following class represents simple functionality of the trapezoid./// </summary>using System;namespace MathClassCS{ 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; } public double GetLeftBaseRadianAngle() { double sinX = GetHeight()/m_leftLeg; return Math.Round(Math.Asin(sinX),2); } public double GetRightBaseRadianAngle() { 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 trapezoid‘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()); double dxR = trpz.GetLeftBaseRadianAngle(); Console.WriteLine("Trapezoid left base angle is: " + dxR.ToString() + " Radians"); double dyR = trpz.GetRightBaseRadianAngle(); 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"); } }}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。