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");
		}
	}
}

C# Math类详细说明

时间: 2024-11-05 23:29:59

C# Math类详细说明的相关文章

java常用类详细介绍及总结:字符串相关类、日期时间API、比较器接口、System、Math、BigInteger与BigDecimal

一.字符串相关的类 1.String及常用方法 1.1 String的特性 String:字符串,使用一对""引起来表示. String声明为final的,不可被继承 String实现了Serializable接口:表示字符串是支持序列化的. 实现了Comparable接口:表示String可以比较大小 String内部定义了final char[] value用于存储字符串数据 String:代表不可变的字符序列.简称:不可变性. 体现: 当对字符串重新赋值时,需要重写指定内存区域赋

Math类中的BigDecimal

如果我们编译运行下面这个程序会看到什么? public class Test {    public static void main(String args[]) {                System.out.println(0.05 + 0.01);        System.out.println(1.0 - 0.42);        System.out.println(4.015 * 100);        System.out.println(123.3 / 100)

Math类

java提供了基本的+,-,*,/算数运算符,同时也提供了更复杂的运算符,比如三角函数,对数元,指数运算 Math是一个工具类.它的构造器被定义为private,因此无法创建Math类的对象,Math类中的所有方法都是 类方法,可以直接通过类名来调用,Math除了提供了大量的静态方法,还提供了两个类变量PI和E public class MathTest{ public static void main(String[] args){ //将弧度转化成角度 System.out.println(

Math类概述及其成员方法

Math 类包括用于运行基本数学运算的方法,如初等指数.对数.平方根和三角函数,这个类寻常开发中用的不多,可是在某些需求上会用到,比方求二个用户年龄的相差多少岁,这会用到Math类中的方法!如今把Maht几个经常使用的方法列举一下, public static int abs(int a) 求一个数的绝对值 public static double ceil(double a) 向上取大于这个数的最小整数 public static double floor(double a) 向下取这个值最大

Java Math类

1 package demo04; 2 3 //Math类所有方法都是静态方法,直接类名调用 4 public class MathDemo { 5 public static void main(String[] args) { 6 7 //static int abs(int a) 返回 int 值的绝对值 8 System.out.println(Math.abs(-1)); //1 9 10 //static double ceil(double a) 向上取整 11 System.ou

Math类的round方法小解

在Math类中有三个关于“四舍五入”的静态方法(ceil,floor,round): ① Math.ceil(number) 向上取整,Math.ceil(11.2) 结果:12              Math.ceil(11.6) 结果:12 Math.ceil(-11.2) 结果:-11            Math.ceil(-11.6) 结果:-11 ② Math.floor(number) 向下取整, Math.floor(11.2) 结果11              Math

Math类++Date类

package day06; /***** * Math类的演示 * Math类: * 1,Math类是final的 * 2,Math的构造方法是private的(不能手工new) * 3,Math提供的方法是静态的(全部都可以调用) * 常用的方法: * abs:绝对值 * sqrt:平方根 * pow(double a ,double b) a的b次幂 * log    自然对数 * exp    e为底的指数 * max(double a ,double b)    两个数求最大值 * m

JAVA API(三) Math类和Random类

1.Math类 Math类是数学操作类,提供了一些用于进行数学计算的静态方法.Math类中有两个静态常量PI和E,分别代表数学常量π和e. 列表中是Math类的一些常用方法: 方法声明 功能描述 int abs(int a) 计算a的绝对值 double ceil(double a) 向上取整,求大于参数的最小整数 double  floor(double a ) 向下取整,求小于参数的最大整数 long round(double a) 表示四舍五入,算法为Math.floor(a+0.5) d

string、math类、random随机数、datetime、异常保护

今天讲的知识点比较多,比较杂,以至于现在脑子里还有点乱,慢慢来吧... string (1)string.length; (获得你string字符串的长度) (2)a = a.Trim(); 重新赋值 (3)string.Trim(); 去掉字符串前后空格 (4)string.TrimStart(); 去掉前面的空格 (5)string.TrimEnd(); 去掉后面的空格 (6) string.ToLower(); 将所有大写字母转换为小写 (7)string.ToUpper(); 将所有小写