文档章节

Math 中常用的数学函数

涂孟超
 涂孟超
发布于 2014/09/26 15:35
字数 540
阅读 8
收藏 0
//整除与余数: DivMod
const
  a = 11;
  b = 3;
var
  x,y: Word;
begin
  ShowMessage(IntToStr(a div b)); {整除得 3}
  ShowMessage(IntToStr(a mod b)); {余数 2}

  DivMod(a,b,x,y);
  ShowMessage(IntToStr(x)); {3}
  ShowMessage(IntToStr(y)); {2}
end;

 
 
 
 
 

 

 

  
//返回整数: Ceil、Floor var d1,d2: Real; const d = 1.2; begin {向大补入} d1 := Ceil(d); d2 := Ceil(-d); ShowMessage(FloatToStr(d1)); {2} ShowMessage(FloatToStr(d2)); {-1} {向小舍入} d1 := Floor(d); d2 := Floor(-d); ShowMessage(FloatToStr(d1)); {1} ShowMessage(FloatToStr(d2)); {-2} end;
//最大值与最小值: Max、Min var d: Real; begin d := Max(5.2, -2); ShowMessage(FloatToStr(d)); {5.2} d := Min(5.2, -2); ShowMessage(FloatToStr(d)); {-2} end;
//Double 数组求和: Sum var d: Real; const arr: array[0..3] of Double = (1, 2, 3, -4.5); begin d := Sum(arr); {要求必须是 Double 数组} ShowMessage(FloatToStr(d)); {1.5} end;
//Double 数组求平均值: Mean var arr: array[0..5] of Double; d: Double; begin arr[0] := -1.2; arr[1] := 1.0; arr[2] := 2.5; arr[3] := 3.0; arr[4] := 4.5; arr[5] := 25.0; d := Mean(arr); ShowMessage(FloatToStr(d)); {5.8} end;
//计算一个数的 n 次方: Power var d: Real; begin d := Power(3,2); {3 的 2 次方} ShowMessage(FloatToStr(d)); {9} end;
//判断在一个误差范围内, 一个数字是否为0: IsZero const d1 = 0.4; d2 = -0.1; d3 = 3; var b: Boolean; begin b := IsZero(d1, 0.4); {参数2是误差范围} ShowMessage(BoolToStr(b)); {True} b := IsZero(d2, 0.4); ShowMessage(BoolToStr(b)); {True} b := IsZero(d3, 0.4); ShowMessage(BoolToStr(b)); {False} b := IsZero(d3); {参数2是可选的, 默认是0} ShowMessage(BoolToStr(b)); {False} end;
//比较两个参数在一定误差范围内是否相等: SameValue var b: Boolean; begin b := SameValue(1.2, 1.21, 0.01); {误差是 0.01} ShowMessage(BoolToStr(b)); {True} b := SameValue(1.2, 1.21); {误差默认是 0} ShowMessage(BoolToStr(b)); {False} end;
//判断一个数的正负 var v: TValueSign; {-1..1} begin v := Sign(22); ShowMessage(IntToStr(v)); {返回 1 表示是正数} v := Sign(-22); ShowMessage(IntToStr(v)); {返回 -1 表示是负数} v := Sign(0); ShowMessage(IntToStr(v)); {返回 0 表示是 0} end;
//舍入位数: RoundTo、SimpleRoundTo var d: Real; const d1 = 1234567; d2 = 1.234; d3 = 1.235; d4 = - 1.235; begin d := RoundTo(d1,3); ShowMessage(FloatToStr(d)); {123500} d := RoundTo(d2,-2); ShowMessage(FloatToStr(d)); {1.23} d := RoundTo(d3,-2); ShowMessage(FloatToStr(d)); {1.24} d := RoundTo(d4,-2); ShowMessage(FloatToStr(d)); {-1.24} d := SimpleRoundTo(d1,3); ShowMessage(FloatToStr(d)); {123500} d := SimpleRoundTo(d2,-2); ShowMessage(FloatToStr(d)); {1.23} d := SimpleRoundTo(d3,-2); ShowMessage(FloatToStr(d)); {1.24} d := SimpleRoundTo(d4,-2); ShowMessage(FloatToStr(d)); {-1.24} {RoundTo 使用银行家舍入法; SimpleRoundTo 使用不均衡算法舍入, 适合更大的值} end;

本文转载自:http://www.cnblogs.com/del/archive/2007/12/28/1018318.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
JavaScript数学对象Math的创建与使用

Js中Math对象不用使用new创建,直接使用即可 常用的功能有,取绝对值,四舍五入,取整,随机数,取最大最小值 取绝对值:Math.abs(number) <script type="text/javascript">// 绝对值documen...

MaoKe
2015/11/14
0
0
73.相同的包名解决办法是给包起个别名

在开发过程中,随着项目的复杂,需要在同一个package中引入的包会变多,而包名就会有重名的可能。这个时候,我们需要给引入包分别起一个别名。 比如,在项目中,我们需要建立一个专属的lib,...

厚土火烟
2018/10/13
0
0
观点 | 我们该如何学习机器学习中的数学

  选自ycombinator博客   机器之心编译   作者:Vincent Chen   参与:机器之心编辑部      数学在机器学习中非常重要,不论是在算法上理解模型代码,还是在工程上构建系统,数学...

机器之心
2018/08/04
0
0
C#数学计算包 Math.NET

1.Math.NET基本介绍 Math.NET官方网站:http://www.mathdotnet.com/ Math.NET的目标是为提供一款自身包含清晰框架的符号运算和数学运算/科学运算,它是C#开发的开源类库。Math.NET含了一个支...

CSharpKit
2017/12/18
0
0
黑马程序员分享:Python web开发中常用的标准库

在这些年的开发过程中,深有体会的一点就是,学习一门编程语言,除了要精通它的语法以外,更需要我们去学习该门语言的标准库。标准库是多年以来,大量开发人员留给我们的宝贵财富,它涵盖了编...

传智播客
2017/02/23
196
0

没有更多内容

加载失败,请刷新页面

加载更多

值得收藏:一份非常完整的MySQL规范

一、数据库命令规范 所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来) 数据库对象的命...

Java干货分享
31分钟前
3
0
VirtualBox中CentOS7主机适配器(Host-only Adapter)网络配置

最近使用 VirtualBox 安装 CentOS 7 虚拟集群环境,为实现主机网络访问虚拟机、虚拟机与虚拟机之间网络互访,VirtualBox 默认的 NAT 网络连接方式是肯定不能满足了,以前常用的桥接网络方式这...

calmsnow
33分钟前
2
0
TechDay公开课实录:PaddlePaddle车牌识别实战和心得

车牌识别作为一种常见的图像识别的应用场景,已经是一个非常成熟的业务了,在传统的车牌识别中,可以使用字符分割+字符识别的方式来进行车牌识别,而深度学习兴起后,出现了很多端到端的车牌...

深度学习之桨
55分钟前
3
0
关于SeekBar 拖动区域小的解决办法

//seekbarLayout 是seekBar对象statusSeekbar的父层布局seekbarLayout = mStatusViewLayout.findViewById(R.id.id_seekbar_layout);seekbarLayout.setOnTouchListener(new View.OnTouchL......

东街小霸王
今天
2
0
python实现下载网络视频资源

项目需求: 有时候我们做爬虫的时候,需要把爬取到的视频资源保存到我们本地,以防爬取的视频链接被原来资源主人变更,所以就需要把好不容易拿到的资源永久变为自己的,就需要把视频链接下载到我们...

银装素裹
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部