Delphi 数学函数:常用的几个数学函数(Power、Abs、Int、Trunc、Round、Frac、sqr、sqrt)
Delphi 常用的几个数学函数
1
Power函数,求次方
定义:function Power(X,Y): (Same type as parameter);
说明:X可以是整型,也可以是实型;返回值实型例子:
var
i:integer;
begin
i := Power(2,3); { 8 } // 2的3次方
end.
2
Abs(x) 函数 ,求绝对值。
定义:function Abs(X): (Same type as parameter);
说明:X可以是整型,也可以是实型;返回值和X的类型一致例子:
var
r: Real;
i: Integer;
begin
r := Abs(-10.3); { 10.3 }
i := Abs(-170); { 170 }
end.
3
Int(x) 函数 取整数(实数)
定义:function Int(X: Real): Real; 注意:X是实型数,返回值也是实型的;返回的是X的整数部分,也就是说,X被截尾了(而不是四舍五入)例子:
var R: Real;
begin
R := Int(123.4567); { 123.0 }
R := Int(-123.456); { -123.0 }
end.
4
Trunc(x)函数 取整(整数 截尾)
定义:function Trunc(X: Real): Longint; 注意:X是实型表达式. Trunc 返回Longint型的X的整数部分例子:
begin
Writeln(2.4, ' becomes ', Trunc(2.4)); { 2 }
Writeln(2.5, ' becomes ', Trunc(2.5)); { 2 }
Writeln(-2.4, 'becomes ', Trunc(-2.4)); { -2 }
Writeln(-2.5, 'becomes ', Trunc(-2.5)); { -2 }
end.
Int(x)函数和Trunc(x)函数 都是取整数,那么他们有什么区别呢,直接看输出便知:
Trunc 取整 : X := trunc(10.6) X := 10; //X是Int64类型,是整数
Int 取整 : X := Int(10.6) X := 10.0 //X是一个浮点数
5
Round(x)函数 四舍五入
定义:function Round(X: Real): Longint; 注意:X是实型表达式. Round 返回Longint型的X的四舍五入值.如果返回值超出了Longint的表示范围,则出错. 例子:
begin
Writeln(2.4, ' rounds to ', Round(2.4)); { 2 }
Writeln(2.5, ' rounds to ', Round(2.5)); { 3 }
Writeln(-2.4, 'rounds to ', Round(-2.4)); { -2 }
Writeln(-2.5, 'rounds to ', Round(-2.5)); { -3 }
end.
6
Frac(x)函数 取小数
定义:function Frac(X: Real): Real; 注意:X 是实型表达式. 结果返回 X 的小数部分; 也就是说,Frac(X) = X - Int(_X). 例子:
var
R: Real;
begin
R := Frac(123.456); { 0.456 }
R := Frac(-123.456); { -0.456 }
end.
7
sqr(x) 平方函数
sqrt(x) 求平方根函数
定义:
平方根:function Sqrt(X: Real): Real;
注意:X 是实型表达式. 返回实型的X的平方根. 平方:function Sqr(X): (Same type as parameter);
注意:X 是实型或整型表达式.返回值的类型和X的类型一致,大小是X的平方,即X*X.
例子:
begin
Writeln('5的平方 ', Sqr(5)); {结果 25 }
Writeln('2的平方根 ',Sqrt(2.0)); {结果 1.414 }
end;
Pascal函数实例
标准数据类型的含义及符号
(1)
整型数的取值范围:-32768 <= n <= 32768;
整型运算操作:+、-、*、div、mod;
整型关系操作:=、<>、>=、<=,
结果为布尔型;有关整型的标准函数:
整型函数
函数名 函数值 例
前接函数 pred(x) x-1 pred(4)=3
后继函数 succ(x) x+1 succ(-3)=-2
绝对值函数abs(x) |x| abs(-1)=1
平方函数sqr(x) x^2 sqr(-5)=25
奇函数 odd(x) x为奇数时值为True odd(1)=true
x为偶数时值为False odd(16)=false
字符函数chr(x) 序号为x的ASCII字符 chr(65)=\'\'a\'\'
a对应的序号65
(2)
实型数的绝对值取值范围:1E-38~1E+38;计算机实数的表示标准形式往往类如1.2E-8,-1234.56E+3等形式;实数范围比整数大,但实型数的运算速度比整形数慢,另外实型数在存储时会出现小的误差;
实型的运算操作:+、-、*、/。只要有一个运算对象是实型量,其运算结果总是实型量,即其可与整型量混合计算。
实型的关系操作;=、<>、>=、<=,结果为布尔型,即两种结果:true或false。
实型函数种类:
abs(x);
sqr(x);
sin(x)正弦函数,求数学三角正弦函数的值,如sin(1.570789)=0.99999,注意X值要以弧度作单位;
cos(x)余弦函数;
arctan(x)反正切函数;
ln(x)自然对数;
exp(x)指数函数;求ex的值。
Sqrt(x)平方根函数;如sqrt(1.44)=1.2
trunc(x)截尾函数;截去实数x的小数部分,保留整数,例:trunc(-3.3)=-3;
round(x)舍入函数;将实数x四舍五入得到最接近的整数,例;round(3.3)=3,round(-8.9)=-9;
注意:实型数据没有pred和succ函数。
(3)
布尔型数据的值只有两个:false和true,前者序号为0,后者序号为1。布尔类型数据最少,但用途广泛,主要用于程序设计中的流程控制和逻辑判断。
布尔型数据可作如下运算操作:
not(逻辑非),and(逻辑与),or(逻辑与)。
布尔型的标准函数:
ORD(X) 序号函数,例:ORD(FALSE)=0,ORD(TRUE)=1;
RRED(X) 前趋函数,例:PRED(TRUE)=FALSE,但X的值为TRUE时,只有前接值,没有后趋值;
SUCC(X)后继函数,例:SUCC(FALSE)=TRUE,但X的值为FALSE时,只有后继值,没有前趋值;
EOF(X)和EOLN(X)文件结束函数,行结束函数,此处不予以讨论。
(4)
字符型数据取值范围:ASCⅡ码表中的一部分,包含几十个大小写英文字母与数字及数字、各种符号(含空格),注意每个字符符号均有相应的序号,而序号可视为整型数,所以字符型与整型是可以转换的。
在PASCAL程序中,用单引号括起来的一个字符表视字符型数据,如\'\'A\'\',\'\'8\'\',\'\'+\'\',\'\' \'\',分别表示字母A,数字8,字符+和空格。注意整型或实型的8与字符型的8是有本质的区别的。
字符型数据不可直接进行运算操作+、-、*、/;
字符型数据可做如下关系操作:>,<,=,<>,<=,>=,运算结果是布尔类型的值,即TRUE或FALSE。
字符性的标准函数:
ORD(x) 求X的序号,例如:ORD(\'\'C\'\')=67;ORD(\'\'0\'\')=48;ORD(\'\'A\'\')=65;
ORD(\'\'A\'\')=97;
PRED(X) 求X的前接值,例如:PRED(\'\'6\'\')=\'\'5\'\';
SUCC(X) 求X的后续值,例如:SUCC(\'\'6\'\')=\'\'7\'\'
CHR(X) 求序号为X的相应自负,是ORD的逆函数,例如:CHR(67)=\'\'C\'\';
CHR(ORD(\'\'X\'\')-1);
例如如下关系也成立;
ORD(\'\'9\'\')-ORD(\'\'1\'\')=57-49=8;
SUCC(X)=CHR(ORD(X)+1);如SUCC(\'\'B\'\')=CHR(ORD(\'\'B\'\')+1)=CHR(66+1)-C\'\';
PRED(X)=CHR(ORD(X)-1);如PRED( \'\'B\'\')=CHR(ORD(\'\'B\'\')-1)=CHR(66-1)=\'\'A\'\'
Delphi 数学函数:常用的几个数学函数(Power、Abs、Int、Trunc、Round、Frac、sqr、sqrt)的更多相关文章
- [转]iview render函数常用总结(vue render函数)
原文地址:https://blog.csdn.net/weixin_43206949/article/details/89385550 iview 的render函数就是vue的render函数ivi ...
- 【函数】Oracle函数系列(2)--数学函数及日期函数
[函数]Oracle函数系列(2)--数学函数及日期函数 1 BLOG文档结构图 2 前言部分 2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不 ...
- Lua的函数的定义、math数学函数、lua字符串的处理、lua支持的字符串类、模式串中的特殊字符_学习笔记04
Lua的函数的定义.math数学函数 定义函数 function [function name] (param1,param2) [function code] --定义一个函数用来求的两个数字的和 ...
- Delphi 7.0常用函数速查手册(磁盘文件类)
在Delphi 7.0中,已为我们定义好了非常多的函数,大致分类有6种:数据类型转换函数.字符串.数组操作函数.文件.磁盘操作函数.内存.指针操作函数.数学运算函数.日期函数. 在Delphi中调用函 ...
- 人生苦短之我用Python篇(深浅拷贝、常用模块、内置函数)
深浅拷贝 有时候,尤其是当你在处理可变对象时,你可能想要复制一个对象,然后对其做出一些改变而不希望影响原来的对象.这就是Python的copy所发挥作用的地方. 定义了当对你的类的实例调用copy.c ...
- EXCEL函数常用技巧浅析
EXCEL函数常用技巧浅析 EXCEL函数是一门趣味性非常大的游戏,此贴内容基本上为总结前人经验而来.废话不多说,我们现在走入正题. 一:判断数值奇偶性 1.1 ISODD(number) 判断一个 ...
- c++函数常用
isalnum 判断一个字符是否是字符类的数字或字母isalpha 判断一个字符是否是字母isblank 判断一个字符是否是空白字符(空格,水平制表符,TAB)iscntrl 判断一个控制符(ASCI ...
- PHP常用的数组相关处理函数
[数组中常用的多种遍历方式] [for 和 foreach 略] [while() . list() .each() 组合循环遍历数组] each()函数 a. 需要一个数组作为参数 b. 返回来的也 ...
- Delphi中一些常用的组合键值
Delphi中一些常用的组合键值 CTRL+A: #1 CTRL+B: #2 CTRL+C: #3 CTRL+D: #4 CTRL+E: #5 CTRL+F: #6 CTRL+G: #7 ...
随机推荐
- 使用 Audacity 录制声卡声音
在Linux中使用 Audacity 录制电脑播放的声音非常简单,其实主要设置不在 Audacity 上,而是要设置好输入设备并选择对录音输入源. 首先确认输入设备中 内置音频的Monitor 没有被 ...
- HTTP、HTTPS等常用服务的默认端口号
口号标识了一个主机上进行通信的不同的应用程序. 1.HTTP协议代理服务器常用端口号:80/8080/3128/8081/9098 2.SOCKS代理协议服务器常用端口号:1080 3.FTP(文件传 ...
- 转帖 使用eclipse创建之前没有创建的web.xml
由于在下学习Java的时间不长,所以对于一些工具的使用不太熟悉,特别是eclipse,虽然这是一款强大的Java编译工具但是现有汉化版.所以在实际使用的时候难免会遇到各种各样的麻烦.今天就遇到了一个: ...
- Yii2中应用子模块下的内容
public function actionIndex(){ $article=\YII::$app->getModule('article'); $article->runAction( ...
- 【Flutter学习】基本组件之基本网格Gradview组件
一,概述 数据量很大的时用矩阵方式排列比较清晰,此时用网格列表组件,即为GridView组件,可实现多行多列的应用场景. 使用GridView创建网格列表有多种方式: GridView.count 通 ...
- API应用实例
API声明透明 {API声明} type TSetLayeredWindowAttributes = function(wnd: HWND; crKey: DWORD; bAlpha: BYTE; d ...
- (转)OpenFire源码学习之四:openfire的启动流程
转:http://blog.csdn.net/huwenfeng_2011/article/details/43413233 openfire启动 ServerStarter 启动流程图: 启动的总入 ...
- 工具类--MD5Utils
public class MD5Utils { private static final String[] HEX_DIGITS = { "0", "1", & ...
- 10、TestNG 的 FixTrue用法一
Fixture 是指一个测试运行所需的固定环境,通俗来说 ,为测试用例所准备的环境. 以下是TestNG中可用的注释及其属性的简要概述. 我们先演示@BeforeClass.@AfterClass.@ ...
- LeetCode K个一组翻转链表
题目链接:https://leetcode-cn.com/problems/reverse-nodes-in-k-group/ 题目大意 略. 分析 逆转每一段,然后和上一段与下一段衔接即可,加头结点 ...