×

freepascal教程

freepascal教程(free pascal的函数过程大全)

admin admin 发表于2024-01-21 06:55:59 浏览35 评论0

抢沙发发表评论

各位老铁们好,相信很多人对freepascal教程都不是特别的了解,因此呢,今天就来为大家分享下关于freepascal教程以及free pascal的函数过程大全的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

本文目录

free pascal的函数过程大全

其实一般来说用不到的,这些就很全了只要一些很常用的就够了abs 函数 绝对值函数 addexitproc 函数 将一过程添加到运行时库的结束过程表中 addr 函数 返回指定对象的地址 adjustlinebreaks 函数 将给定字符串的行分隔符调整为cr/lf序列 align 属性 使控件位于窗口某部分 alignment 属性 控件标签的文字位置 allocmem 函数 在堆栈上分配给定大小的块 allowgrayed 属性 允许一个灰度选择 ansicomparestr 函数 比较字符串(区分大小写) ansicomparetext 函数 比较字符串(不区分大小写) ansilowercase 函数 将字符转换为小写 ansiuppercase 函数 将字符转换为大写 append 函数 以附加的方式打开已有的文件 arctan 函数 余切函数 assignfile 函数 给文件变量赋一外部文件名 assigned 函数 测试函数或过程变量是否为空 autosize 属性 自动控制标签的大小 backgrounddi2001.jpg 属性 背景色 beginthread 函数 以适当的方式建立用于内存管理的线程 bevelinner 属性 控件方框的内框方式 bevelouter 属性 控件方框的外框方式 bevelwidth 属性 控件方框的外框宽度 blockread 函数 读一个或多个记录到变量中 blockwrite 函数 从变量中写一个或多个记录 borderstyle 属性 边界类型 borderwidth 属性 边界宽度 break 命令 终止for、while、repeat循环语句 brush 属性 画刷 caption 属性 标签文字的内容 changefileext 函数 改变文件的后缀 chdir 函数 改变当前目录 checked 属性 确定复选框选中状态 chr 函数 返回指定序数的字符 closefile 命令 关闭打开的文件 color 属性 标签的颜色 columns 属性 显示的列数 comparestr 函数 比较字符串(区分大小写) concat 函数 合并字符串 continue 命令 继续for、while、repeat的下一个循环 copy 函数 返回一字符串的子串 cos 函数 余弦函数 ctl3d 属性 是否具有3d效果 cursor 属性 鼠标指针移入后的形状 date 函数 返回当前的日期 datetimetofiledate 函数 将delphi的日期格式转换为dos的日期格式 datetimetostr 函数 将日期时间格式转换为字符串 datetimetostring 函数 将日期时间格式转换为字符串 datetostr 函数 将日期格式转换为字符串 dayofweek 函数 返回星期的数值 dec 函数 递减变量值 decodedate 函数 将日期格式分解为年月日 decodetime 函数 将时间格式分解为时、分、秒、毫秒 delete 函数 从字符串中删除子串 deletefile 命令 删除文件 diskfree 函数 返回剩余磁盘空间的大小 disksize 函数 返回指定磁盘的容量 dispose 函数 释放动态变量所占的空间 disposestr 函数 释放字符串在堆栈中的内存空间 ditherbackgrounddi2001.jpg?使背景色的色彩加重或减少50% dragcursor 属性 当鼠标按下时光标的形状 dragmode 属性 按动的作用方式 dropdowncount 属性 容许的显示数据项的数目 editmask 属性 模式 enabled 属性 是否使标签呈现打开状态 encodedate 函数 将年月日合成为日期格式 encodetime 函数 将时、分、秒、毫秒合成为时间格式 endmargin 属性 末尾边缘 eof 函数 对有类型或无类型文件测试是否到文件尾 eoln 函数 返回文本文件的行结束状态 erase 命令 删除外部文件 exceptaddr 函数 返回引起当前意外的地址 exclude 函数 从集合中删除一些元素 exceptobject 函数 返回当前意外的索引 exit 命令 立即从当前的语句块中退出 exp 函数 指数函数 expandfilename 函数 返回包含绝对路径的字符串 extendedselect 属性 是否允许存在选择模式,true时,multiselect才有意义 extractfiledir 函数 返回驱动器和路径 extractfileext 函数 返回文件的后缀 extractfilename 函数 返回文件名 extractfilepath 函数 返回指定文件的路径 fileage 函数 返回文件已存在的时间 fileclose 命令 关闭指定的文件 filecreate 命令 用指定的文件名建立新文件 filedatetodatetime 函数 将dos的日期格式转换为delphi的日期格式 fileexists 函数 检查文件是否存在 filegatattr 函数 返回文件的属性 filegetdate 函数 返回文件的dos日期时间标记 fileopen 命令 用指定的存取模式打开指定的文件 filepos 函数 返回文件的当前指针位置 fileread 命令 从指定的文件读取 filesearch 命令 在目录中搜索指定的文件 fileseek 函数 改变文件的指针 filesetattr 函数 设置文件属性 filesetdate 函数 设置文件的dos日期时间标记 filesize 函数 返回当前文件的大小 filewrite 函数 对指定的文件做写操作 fillchar 函数 用指定的值填充连续字节的数 findclose 命令 终止findfirst/findnext序列 findfirst 命令 对指定的文件名及属性搜索目录 findnext 命令 返回与文件名及属性匹配的下一入口 floattodecimal 函数 将浮点数转换为十进制数 floattostrf 函数 将浮点数转换为字符串 floattostr 函数 将浮点数转换为字符串 floattotext 函数 将给定的浮点数转换为十进制数 floattotextfmt 函数 将给定的浮点数转换为十进制数 flush 函数 将缓冲区的内容刷新到输出的文本文件中 fmtloadstr 函数 从程序的资源字符串表中装载字符串 fmtstr 函数 格式化一系列的参数,其结果以参数result返回 font 属性 设置字体 format 函数 格式化一系列的参数并返回pascal字符串 formatbuf 函数 格式化一系列的参数 formatdatetime 函数 用指定的格式来格式化日期和时间 formatfloat 函数 指定浮点数格式 frac 函数 返回参数的小数部分 freemem 函数 按给定大小释放动态变量所占的空间 getdir 返回指定驱动器的当前目录 getheapstatus 返回内存管理器的当前状态 getmem 建立一指定大小的动态变量,并将指针指向该处 getmemorymanager 返回内存管理器的入口点 glyph 函数 按钮上的图象 halt 停止程序的执行并返回到操作系统 hi 返回参数的高地址位 high 返回参数的上限值 hint 属性 提示信息 int 返回参数的整数部分 include 添加元素到集合中 insert 在字符串中插入子串 inttohex 将整型数转换为十六进制数 inttostr 将整型数转换为字符串 ioresult 返回最新的i/o操作完成状态 isvalidident 测试字符串是否为有效的标识符 items 属性 默认显示的节点 kind 属性 摆放样式largechange 属性 最大改变值 layout 属性 图象布局 length 函数 返回字符串的动态长度 lines 属性 缺省显示内容 ln 函数 自然对数函数 lo 函数 返回参数的低地址位 loadstr 函数 从应用程序的可执行文件中装载字符资源 lowercase 函数 将给定的字符串变为小写 low 函数 返回参数的下限值 max 属性 最大值 maxlength 属性 最大长度 min 属性 最小值 mkdir 命令 建立一子目录 mod 符号随被除数move 函数 从源到目标复制字节 multiselect 属性 允许同时选择几个数据项 name 属性 控件的名字 new 函数 建立新的动态变量并设置一指针变量指向他 newstr 函数 在堆栈上分配新的字符串 now 函数 返回当前的日期和时间 odd 测试参数是否为奇数 onactivate 事件 焦点移到窗体上时触发 onclick 事件 单击窗体空白区域触发 ondblclick 事件 双击窗体空白区域触发 onclosequery 事件 使用者试图关闭窗体触发 onclose 事件 窗体关闭后才触发 oncreate 事件 窗体第一次创建时触发 ondeactivate 事件 用户切换到另一应用程序触发 ondragdrop 事件 鼠标拖放操作结束时触发 ondragover 事件 有其他控件从他上面移过触发 onmousedown 事件 按下鼠标键时触发 onmouseup 事件 释放鼠标键时触发 onmousemove 事件 移动鼠标时触发 onhide 事件 隐藏窗体时触发 onkeydown 事件 按下键盘某键时触发 onkeypress 事件 按下键盘上的单个字符键时触发 onkeyup 事件 释放键盘上的某键时触发 onpaint 事件 窗体上有新部分暴露出来触发 onresize 事件 重新调整窗体大小触发 onshow 事件 在窗体实际显示之前瞬间触发 ord 返回序数类的序数 outlinestyle 属性 类型 outofmemoryerror 引起outofmemory意外 pageindex 属性 页索引 pages 属性 页 paramcount 函数 返回在命令行上传递给程序的参数数量 paramstr 函数 返回指定的命令行参数 pen 属性 画刷设置 pi 函数 返回圆周率pi picture 属性 显示图象 pictureclosed 属性 设置closed位图 pictureleaf 属性 设置leaf位图 pictureminus 属性 设置minus位图 pictureopen 属性 设置open位图 pictureplus 属性 设置plus位图 pos 函数 在字符串中搜索子串 pred 函数 返回先前的参数 random 函数 返回一随机函数 randomize 函数 用一随机数初始化内置的随机数生成器 read 函数 对有格式的文件,读一文件组件到变量中;对文本文件,读一个或多个值到一个或多个变量中 readln 函数 执行read过程,然后跳到文件下一行 readonly 属性 只读属性 reallocmem 函数 分配一动态变量 rename 函数 重命名外部文件 renamefile 函数 对文件重命名 reset 函数 打开已有的文件 rewrite 函数 建立并打开一新的文件 rmdir 函数 删除空的子目录 round 函数 将实数值舍入为整型值 runerror 函数 停止程序的执行 scrollbars 属性 滚动条状态 seek 函数 将文件的当前指针移动到指定的组件上 seekeof 函数 返回文件的文件结束状态 seekeoln 函数 返回文件的行结束状态 selectedcolor 属性 选中颜色 setmemorymanager 函数 设置内存管理器的入口点 settextbuf 函数 给文本文件指定i/o缓冲区 shape 属性 显示的形状 showexception 函数 显示意外消息与地址 sin 函数 正弦函数 sizeof 函数 返回参数所占的字节数 smallchange 属性 最小改变值 sorted 属性 是否允许排序 sqr 函数 平方函数 sqrt 函数 平方根函数 startmargin 属性 开始边缘 state 属性 控件当前状态 str 函数 将数值转换为字符串stralloc 函数 给以null结束的字符串分配最大长度-1的缓冲区 strbufsize 函数 返回存储在由stralloc分配的字符缓冲区的最大字符数 strcat 函数 将一字符串附加到另一字符串尾并返回合并的字符串 strcomp 函数 比较两个字符串 strcopy 函数 将一个字符串复制到另一个字符串中 strdispose 函数 释放堆栈上的字符串 strecopy 函数 将一字符串复制到另一个字符串并返回结果字符串尾部的指针 strend 函数 返回指向字符串尾部的指针 stretch 属性 自动适应控件的大小 strfmt 函数 格式化一系列的参数 stricomp 函数 比较两个字符串(不区分大小写) stringtowidechar 函数 将ansi字符串转换为unicode字符串 strlcat 函数 将一字符串中的字符附加到另一字符串尾并返回合并的字符串 strlcomp 函数 以最大长度比较两个字符串 strlcopy 函数 将一个字符串中的字符复制到另一个字符串中 strlen 函数 返回字符串中的字符数 strlfmt 函数 格式化一系列的参数,其结果中包含有指向目标缓冲区的指针 strlicomp 函数 以最大长度比较两个字符串(不区分大小写) strlower 函数 将字符串中的字符转换为小写 strmove 函数 将一个字符串中的字符复制到另一个字符串中 strnew 函数 在堆栈上分配一个字符串 strpas 函数 将以null结束的字符串转换为pascal类的字符串 strpcopy 函数 将pascal类的字符串复制为以null结束的字符串 strplcopy 函数 从pascal类的最大长度字符串复制为以null结束的字符串 strpos 函数 返回一个字符串在另一个字符串中首次出现指针 strrscan 函数 返回字符串中最后出现字符的指针 strscan 函数 返回字符串中出现首字符的指针 strtodate 函数 将字符串转换为日期格式 strtodatetime 函数 将字符串转换为日期/时间格式 strtofloat 函数 将给定的字符串转换为浮点数 strtoint 函数 将字符串转换为整型 strtointdef 函数 将字符串转换为整型或默认值 strtotime 函数 将字符串转换为时间格式 strupper 函数 将字符串中的字符转换为大写 style 属性 类型选择 suce 函数 返回后继的参数 swap 函数 交换参数的高低地址位 tabs 属性 标记每一项的内容 tabindex 属性 标记索引 text 属性 显示的文本 texttofloat 函数 将字符串(以null结束的格式)转换为浮点数 time 函数 返回当前的时间 timetostr 函数 将时间格式转换为字符串 trim 函数 从给定的字符串中删除前导和尾部的空格及控制字符 trimleft 函数 从给定的字符串中删除首部的空格及控制字符 trimright 函数 从给定的字符串中删除尾部的空格及控制字符 trunc 函数 将实型值截取为整型值 truncate 函数 截去当前文件位置后的内容 unselectedcolor 属性 未选中颜色 upcase 将字符转换为大写 uppercase 将给定的字符串变为大写 val 函数 将字符串转换为整型值 vararraycreate 函数 以给定的界限和维数建立变体数组 vararraydimcount 函数 返回给定变体的维数 vararrayhighbound 函数 返回给定变体数组维数的上界 vararraylock 函数 锁定给定的变体数组 vararraylowbound 函数 返回给定变体数组维数的下界 vararrayof 函数 返回指定变体的数组元素 vararrayredim 函数 通过改变上限来调整变体的大小 vararrayunlock 函数 解锁指定的变体数组 varastype 函数 将变体转换为指定的类型 varcase 函数 将变体转换为指定的类型并保存他 varclear 函数 清除指定的变体 varcopy 函数 将指定的变体复制为指定的变体 varformdatetime 函数 返回包含日期时间的变体 varisarray 函数 测试变体是否为数组 varisempty 函数 测试变体是否为unassigned varisnull 函数 测试变体是否为null vartodatetime 函数 将给定的变体转换为日期时间 vartype 函数 将变体转换为指定的类型并保存他 visible 属性 控件的可见性 wantreturns 属性 为true时,按回车键产生一个回车符;为false时,按下ctrl+enter才产生回车符 write 命令 对有格式的文件,写一变量到文件组件中;对文本文件,写一个或多个值到文件中 writeln 命令 执行write过程,然后输出一行结束标志 widecharlentostring 函数 将ansi字符串转换为unicode字符串 widecharlentostrwar 函数 将unicode字符串转换为ansi字符串变量 widechartostring 函数 将unicode字符串转换为ansi字符串 widechartostrvar 函数 将unicode字符串转换为ansi字符串变量

求Free Pascal IDE基本教程 要教程 所有的

(1)进入与退出(注意:退出时必须使用文件菜单中的退出命令或Alt+X) (2)程序 光标移动键的使用 Backspace键:删除光标前一个字符 Ctrl+N:在光标前插入一行 Ctrl+Y:删除光标所在行 Home:光标移到行首 End:光标移到行尾 PageUp/PageDown:上下翻页 Insert:插入与改写状态切换 (3)编译程序(Compile):Alt+F9 (4)运行程序(Run):Ctrl+F9 (5)保存程序(Save):F2 (6)打开原有的程序:F3 (7)查看程序运行结果:Alt+F5 (8)EXIT 返回(9) program lt1;{程序首部} var {说明部分} a,b:integer; sum:integer; begin {执行部分} a:=3355; b:=789; sum:=a+b; writeln(’sum=’,sum); end.(10) 1.3 完整的Pascal程序结构一个完全的Pascal程序结构program 程序名;uses   已知单元说明;label   标号说明;const   常量说明;type   类型说明;var   变量说明;function 函数说明;procedure 过程说明;begin 语句; 语句; …… 语句;end.  (11) round    实型   四舍五入      longint  trunc    实型   截断取整      longint (12) 运算符  运算  运算对象       结果类型  +    加  整型、实型  只要有一个运算对象是实型,结果就  -    减  整型、实型  是实型,如果全部的运算对象都是整  *    乘  整型、实型  型并且运算不是除法,则结果为整型,  /    除  整型、实型  若运算是除法,则结果是实型。  div  整除  整型         整型  mod  取余  整型         整型(13) ⑴ 当程序开始把数据输出(写)到文件中去时,总是从文件的起始位置开始。也就是说不可能从文件 的中间位置开始存放数据。 ⑵ 输出的数据是一个接一个地存放在文件中的。 ⑶ 当程序从文件中输入(读取)数据到内存时,也总是从文件的起始位置开始。也就是说不可能从文 件的中间位置开始读取数据。 ⑷ 读数据时,也必须按存入文件时的顺序一个接一个的读入到内存中。 ⑸ 对同一个文件的读写操作不能交叉进行。即不能在读取文件的同时往文件里写,也不能在写入文件 的同时从文件里读。 (13) 1.适合于所有文件类型的标准过程和函数 表 9.1 适合于所有文件类型的标准过程和函数 名 字 过程或函数 基 本 功 能 assign 过 程 将一个外部文件名赋予文件变量 close 过 程 关闭一个已打开的文件 eof 函 数 返回文件结束状态 erase 过 程 删除一个外部文件 rename 过 程 重新命名一个外部文件名 reset 过 程 打开一个已存在的文件 rewrite 过 程 建立并打开一个新文件 2.只适合于文本文件的标准过程和函数 表 9.2 只适合文本文件的标准过程和函数 名 字 过程或函数 基 本 功 能 append 过 程 打开一个已存在的文件,从尾部增添元素 eoln 函 数 返回文件的行结束状态 read 过 程 从文本文件中读取一个或多个值赋予相应的变量 readln 过 程 执行 read过程,然后跳到文件的下一行 write 过 程 将一个或多个值写入文本文件 writeln 过 程 执行 write 过程,然后写入一个行结束标志 3.只适合于类型文件的标准过程和函数 表 9.3 只适合类型文件的标准过程和函数 名 字 过程或函数 基 本 功 能 read 过 程 从类型文件中读取一个或多个值赋予相应的变量 write 过 程 将一个或多个值写入类型文件中 filepos 函 数 返回指定文件的当前文件位置 filesize 函 数 返回文件的当前长度,即文件中元素的个数 seek 过 程 将文件指针移到指定的位置(14) 在 Turbo Pascal 系统中,对于整型字符串的输出都是按数据本身长度输出,对于布尔型数据(只有 True和 False 两种值),TRUE 为 4 列,FALSE 为 5列,一律采用大写输出。而 real 型数据的输出时,则按 17列输出,其中第一列为符号位,正号不显示,后四位为 “E±nn”, 中间的 12列为尾数部分。如: writeln(sqrt(75)); 则输出□8.6602540379E+00。(15) ⑴指定单场宽. 格式:write(表达式 :N)或 writeln(表达式:N),其中 N 为 自然数,指定单场宽后,所有数据不再按标 准场宽输出,而按指定场宽输出。若数据实际长度小于指定场宽时,则一律“向右靠齐,左留空格”。 如 write(1234:8);write(’abcdef’:12); 输出结果 : □□□□1234□□□□□□abcdef 对于标准实型数据指定单场宽时,如果场宽大于标准场宽时,右靠齐按标准场宽格式输出 17位,左 留空格。若场宽小于标准场宽时,第一位仍为符号位,最后四位仍为 “E±nn”,中间部分为尾数显示部分。 如果指定的宽度小于 8位,则数据按 8位格式 “*.*E±nn ”输出。 ⑵指定双场宽 如果输出项是实数时,如果希望输出的实数不用科学记数法输出,而用小数形式输出,可以用指定双场 宽方法输出。 双场宽输出格式为:write(实型表达式:m:n),其中 m 和 n 都是 自然数,m 用以指定整个数据所 占 的宽度,n指定输出实数的小数位数。 如 : write(sqrt(75):9:4); 输出 :□□□8.6602 如果双场宽不能满足输出数据的最低要求, 系统 自动突破指定的场宽限制 ,按实际长度输出。 如 :write(sqrt(75):5:4); 要使小数点后有 4位数字,而总场宽为 5,是不可能的(因为还有一个小数点, 小数点前面还有一个数字)。它最低限度要有 6列,即输出为 : 8.6602

Free Pascal 怎么编译

很简单,在记事本里写完程序以后,把名字改成 *.pas (*指的是程序名)然后。。把这个文件用鼠标左键拖拽到桌面上Free Pascal的快捷方式里,然后Free Pascal就把程序打开了。--------------------------------------(以上是废话)---------------------------------------------紧接着,在FREE PASCAL标题的正下方,有“ File Edit Search Run Compile ……………… ”点击Compile,然后点击第一个就编译了。。当然,最简单的方法是按下键盘上的ALT键,然后按F9就OK了。

free Pascal 2.40 教程

第一节 Pascal 程序结构和基本语句 (1)程序首部由保留字Program开头,后面跟一个程序名(如:Exl1);其格式为: Program 程序名;程序名由用户自己取,它的第一个字符必须是英文字母,其后的字符只能是字母或数字和下划线组成,程序名中不能出现运算符、标点符和空格。(2)说明部分程序中所用的常量、变量,或类型、及过程与自定义函数,需在使用之前预先说明,定义数据的属性(类型)。 程序中 Var S,R,C: Real; 是变量说明,此处说明S,R,C三个变量均为实数类型变量。只有被说明为某一类型的变量,在程序中才能将与该变量同类型的数值赋给该变量。变量说明的格式为: Var 变量表:类型;(3)语句部分指由保留字 Begin (开始)至 End. (结尾)之间的语句系列,是解决问题的具体处理步骤,也是程序的执行部分。Pascal程序不管是哪部分,每句末尾都必须有分号(;),但允许最接近 End 的那个语句末尾的分号省略;程序结束的End末尾必须有圆点(. ),是整个程序的结束标志。程序中花括号“{ }”之间的部分为注释部分。Pascal程序结构可归纳用如下来表示: Program 程序名; 程序首部 标号说明; (Label) 常量说明; (Const) 说明部分 类型说明; (Type) 变量说明; (Var) 过程或函数说明; Begin 程序体 (主程序) 语句系列; 语句部分 End. 把处理问题的步骤编成能从上到下顺序执行的程序,是简单程序的基本特征。再来分析下面两道例题的Pascal程序结构和继续学习基本语句。 程序中Pi是Pascal提供的标准函数,它返回圆周率的近似值:3.1415926…。(:=)是赋值符号,赋值语句的格式为: 变量:=表达式;赋值语句的作用是将:=右边表达式的值记录到左边的变量中。Writeln是输出语句,输出语句有三种格式: ① Write (输出项1,输出项2) ; {执行输出后光标不换行} ② Writeln (输出项1,输出项2) ; {执行输出后光标换到下一行} ③ Writeln {仅输出空白且光标换到下一行}Writeln语句后面的圆括号以内部分均为输出项,可以是多项,各项间用逗号分隔; 对单引号里的内容按照引号内的原样(字符)输出显示。如果输出项是表达式,则只输出表达式的值,而不是表达式本身。 执行本程序中第一个Write语句,输出其引号以内的一串提示信息,是给紧接着的输入语句提供明确的提示(要求),有“一目了然,人机对话”之效果。Readln是一个特殊的输入语句,要求输入一个回车(换行)才能往下执行。 Readln是输入语句,它的一般格式为: ① Read (变量1,变量2); ② Readln (变量1,变量2); ③ Readln前两种格式均要从键盘给变量输入数据,输入时,所键入的数据之间以空格为分隔,以回车为输入结束。若多输入了数据(即数据个数超过变量个数),Read语句读完数据之后,能让后续的读语句接着读取多下来的数据;而Readln 语句对本行多输入的数据不能让后续语句接着读取多下来的数据。为了防止多输入的数据影响下一个输入语句读取数据,建议尽量使用Readln语句输入数据。第三种格式不需输入数据,只需按入一个回车键。 细心观察,会发现本程序语句的顺序很关键。此例用反推顺序(逆序),按步骤正确推算出各变量的值。当然,有的问题可按正序步骤编程,这类程序都称为顺序程序。本程序Writeln语句的输出项含有( ’ ’ : 4 ),这里的冒号用来指定该项显示所占宽度,此处是输出4个空格即(空格项占4格)。 :语句;因此,上面程序中的情况常量表可以写成如下程序中表示形式:Program Exam22_1;Var x,p: integer; tax: real;Begin Write(’Number=’) ; readln(x) ; P:=trunc(x/1000) ; if P>9 then P:=10; Case P of 0 : tax:=0; 1..4 : tax:=x*0.2; { 从1至4作为同一情况处理 } 5..9 : tax:=x*0.3; { 从5至9作为同一情况处理 } 10 : tax:=x*0.5 end; Writeln(’tt=’,tt:5:2) ; ReadlnEnd.程序中的trunc(x)为取整函数,是Pascal的算术标准函数之一。Pascal常用的算术标准函数有19个: (1) abs(x) 求x的绝对值(|x|); (2) exp(x) 求ex的值; (e为无理数2.71828…) (3) frac(x)求x的小数部分; (4) int(x) 求x的整数部分(不舍入,函数值为实型); (5) ln(x) 求以e为底的x的对数(log ex ); (6) odd(x) 判断x的奇偶数(当x为奇数时odd(x)值为true,否则为false); (7) ord(x) 求x的序号,结果为整型(x为有序类型量); (8) pi π值(3.1415926535897932…); (9) pred (x) 求x(有序类型)的前趋值; (10) succ(x) 求x(有序类型)的后继值; (11) random 随机函数,产生0~1的随机值; (12) random(n)产生0~n的随机数(n为word类型,先执行randomize, 才能得到随机整数); (13) round(x) 求x的四舍五入整数; (14) trunc(x) 求x的整数部分(截掉小数部分,结果为整型); (15) sqr(x) 求x的平方值(x2 ); (16) sqrt(x) 求x的开平方根值( );(17) sin(x) 求x的正弦函数(x为弧度);(18) cox(x) 求x的余弦函数(x为弧度);(19) arctan(x) 正切的反三角函数(x为数值); 习题2.21.运输公司计算运费时,距离(S)越长,每公里运费越低,标准如下: 如果S<250公里;运费为标准运价的100% 如果250公里<=S<500公里,运费为标准运价的98%; 如果500公里<=S<1000公里,运费为标准运价的95%; 如果1000公里<=S<2000公里,运费为标准运价的92%; 如果2000公里<=S<3000公里,运费为标准运价的90%; 如果S=>3000公里,运费为标准运价的85%;。请编计算运费的程序。2. 输入考试成绩,如果获85分以上为 A等,获60分~84分为B等,60分以下为C等,编程输出考试等级。3. 某车间按工人加工零件的数量发放奖金,奖金分为五个等级:每月加工零件数N 《 100者奖金为10元;100 《 = N 《 110者奖金为30元;110 《 = N 《120 者奖金为50元;120 《 = N 《130 者奖金为70元;N 》 130者为80元。请编程,由键盘输入加工零件数量,显示应发奖金数。第三章 循环程序在编程中经常遇到需要多次规律相同的重复处理,这就是循环问题。Turbo Pascal采用不同的循环方式来实现,常用的环循有三种: for、repeat、while. 第一节 for 循环for循环是一种自动计数型循环。程序中的变量yse为布尔(或逻辑)类型(Boolean)。布尔值只有两个: True(真) False(假) 布尔值与条件判断结果为真(条件成立)或为假(条件不成立)的作用相同,常用于条件语句和循环语句中。上面程序中用 if yes and (t mod 7=0) then writeln;实现每行打印七个素数换行,程序中布尔变量yes为真,在逻辑上表示是素数;关系式(t mod 7=0) 的值为真时,表示该行输出素数巳是7个;用and将这两个“条件”连起来是作一种布尔(逻辑)运算。Pascal 共有四种逻辑运算符: ① and (与) 两条件都为True时,其结果值为True;否则为False; ② or (或) 两条件中只要有一个为True ;其结果值为True;否则为False; ③ xor (异或) 两条件的逻辑值不相同时,其结果值为True;否则为False; ④ not (非) 条件为True时,其结果值为False;否则为True;(取反) 第二节 repeat 循环Repeat循环是直到型循环。程序中的Repeat循环格式为: repeat 循环体语句; until 条件表达式; {直到条件为真} Repeat循环首先执行由Repeat和Until括起来的循环体语句,然后检查Until后面的条件表达式:如果表达式结果为假,则继续执行循环体,接着继续检查Until后面的条件表达式,如此反复执行直到这个表达式结果为真时结束循环。Repeat循环体语句必须有能改变Until后面条件表达式值的语句,并最终使这个条件表达式的值为真,使循环自动结束。程序中inc (a) 指令相当于a : =a+1,常用的同类指令格式如下: (1) inc(x) 等同 x:=x+1; (2) inc(x, n) 等同 x:=x+n; (3) dec(x) 等同 x:=x—1; (4) dec(x,n) 等同 x:=x—n; 第三节 While 循环While循环是当型循环。程序中采用While当型循环,While循环语句的格式为: While 条件式 do 语句;其中do后面的“语句”是被重复执行的,称为循环体;若循环体是多个语句, 必须用begin--end包起来成为复合语句。While循环首先判断条件式,当条件式的值为真就执行do 后面的语句(循环体)。While的循环体内也必须包含能改变控制变量取值语句, 影响条件式的值, 最终使条件式为false (假), 才能结束循环。Pascal语言的三种基本循环方式, for循环对循环范围有明确规定, 且循环变量只能是递增加1或递减1自动计数控制; 而repeat--until循环和while--do循环比较灵活, 只要对条件表达式的值能控制满足一定要求就能组成循环, 但在循环体中必须有改变循环变量值的语句, 使条件判断(逻辑值)最终为True或flase, 让循环能够终止。

free pascal循环语句运用

5.1 For语句 1.递增型FOR循环。 FOR 循环控制变量:=循环初值 TO 循环终值 DO 循环的语句(或语段)例: FOR I:=5 TO 10 DO WRITELN (I); 输出的结果为: 5 6 7 8 9 10 即循环一共执行了6次 如果要重复多个语句,一定要用BEGIN-END形式: 例:FOR I:=1 TO 10 DO BEGIN WRITELN (I); WRITELN (10-I); END; 2.递减型FOR循环 FOR 循环控制变量:=循环初值 DOWNTO 循环终值 DO 循环语句 递减型FOR循环与递增型FOR循环基本相同,只是循环控制变量每次递减。 3.FOR循环的几点注意内容: (1)循环控制变量必须是顺序类型的变量。所谓顺序类型的变量,就是指整型,字符型,枚举型,子界型,不允许是实型。 (2)不允许在循环体内再对循环控制变量赋值。例如:A:=10;B:=50; FOR K:=A TO B DO BEGIN K:=K+1;{这一句是错误的!!!!!!!!}WRITELN (K); END; (3)当循环初值或循环终值中包含变量时,允许在循环体内改变这些变量的值,但并不改变原定的循环次数。例:A:=1;B:=10; FOR I:=A TO B DO BEGIN A:=5;B:=4;END; 在上面例子中,A,B的值在循环的内部发生了变化,但并不影响循环的次数,依然是10次。 4.多重循环 循环体由PASCAL语句构成,当然也可以包含FOR语句,这就构成了循环的嵌套,形成多重循环。例如,以下FOR循环输出5行,每行输出10个星号(*) FOR i:=1 to 5 DOBEGIN FOR j:=1 TO 10 DOWrite(’*’);END; 初学者应当特别注意,内层的循环变量不能和外层的循环变量相同。也就是说,嵌套的各层循环应当使用不同的变量作为循环变量。5.2 While语句 1.WHILE循环的执行形式 WHILE 布尔表达式 DO 语句 例如: k:=10; WHILE k》0 DO BEGIN Writeln (k); k:=k-1 END; 其中 (1)WHIlE 和DO是PASCAL保留关键字,是WHILE循环语句的组成部分。 (2)保留关键字DO后面的“语法”只能是一条语句,称为“循环体”;如果循环 体中需要包含多个语句则应该如上例所示,采用一条复合语句。 2.WHILE循环的执行功能 当执行到WHILE语句时 (1)求出布尔表达式的值 (2)若布尔表达式的值为真,则执行循环体内的语句;若为“假”,执行步骤4 (3)重复步骤1和2 (4)循环结束,执行循环后面的语句。5.3 Repeat-Until语句 1.REPEAT-UNTIL类型的循环的执行形式 REPEAT 语句1 语句2…… 语句nUNTIL 布尔表达式 例如:以下循环求n=1+2+3+……+100 n:=0;t:=i; REPEAT n:=n+t; t:=t+1; UNTIL t》100;其中(1)REPEAT和UNTIL是PASCAL保留关键字。(2)在REPEAT和UNTIL之间的语句构成循环。在它们之间可以有任意多个语句,这一点和FOR,WHILE循环不同,FOR,WHILE循环体在语法上只允许一条语句。2.REPEAT-UNTIL循环的执行功能 (1)遇到REPEAT语句后,即进入循环体,顺序执行循环体内的语句。(2)遇到UNTIL语句后,求布尔表达式的值。若值为假,则返回步骤1;若为“真”,执行步骤3 (3)循环结束,执行UNTIL后面的下一条语句。希望你能看的懂。

free pascal 教程

第一章、pascal介绍一、pascal的基本语法单位 1、基本符号 A——Z;a——z;0——9;+,-,*,/,=,《》,《=,》=,《,》,(,),,{,},:=,,,;,.,:,..,’,^ 注意:pascal语言除了能使用以上规定的基本符号外,不得使用任何其它符号。 2、保留字 AND,ARRAY,BEGIN,CASE,CONST,DIV,DO,DIWNTO,ELSE,END,FILE,FOR,FUNTION,GOTO,IF,LABEL,MOD,NIL,OF,OR,PACKED,PROCEDURE,PROGRAM,RECORD,REPEAT,SET,THEN,TO,TYPE,UNTIL,VAR,WHILE,WITH。 注意:所起的文件名不能与保留字相同。 3、标识符 以字母打头的字母数字串,长度小于等于8。 标准标识符(共三十九个): 标准常量: false,true,maxint 标准类型: integer,real,char,boolean,text 标准文件: input,output 标准函数: abs,arctan,chr,cos,eof,eoln,exp,ln,odd,ord,ored,round,sin,sqr,sqrt,succ,trunc 标准过程: get,new,pack,page,put,read,readln,reset,rewrite,unpack,write, writeln二、程序结构 1、由三大部分组成:程序首部,说明部分,语句部分。 PROGRAM 程序名(input,output); {……} 解释 CONST pi=3.14159; VAR r,l,s:real; BEGIN write(’input r:’); read(r); l:=2*pi*r; write(’l=’,l,’s=’,s); END; 2、大量使用标点符号,保留字后不加标点符号(END除外)。 第二章、顺序结构程序设计一、标准数据类型 1、实型(real) 小数表示法、指数表示法 2、整型(integer) 正、负整数和零 maxint=32767 pred:前导;succ:后继 :pred(3)=2;succ(3)=4; pred(true)=false; succ(false)=true 3、字符型(char) 是指在两个单引号中的一个字符。 ord:取序数 :ord(’A’)=65 4、布尔型(boolean) false;true 用于布尔型的运算:NOT、AND、OR ord(true)=1;ord(false)=0二、常量和变量的定义 常量的定义:CONST pi=3.14159; blank=’ ’; 变量的定义:VAR r,l,s:read; cl:char;三、表达式及赋值语句 :b2-4ac 写成:sqt(b)-4*a*c 赋值:《变量》:=《表达式》四、输入输出语句 1、输入语句:read(《变量表》);readln(《变量表》) 注:表达式里面变量与变量之间用逗号隔开; readln表示下一个语句将从下一行开始操作; 输入时,整型或实型用空格或回车隔开,字符型之间无需分隔,一个接一 个输入。 2、输出语句:write(《输出表》);writeln(《输出表》) 注:对real或integer限定场宽:write(’a=’,a:2:0) {a为real型}第三章、选择结构程序设计一、if 语句格式:IF《条件》 THEN《语句1》 ESLE《语句2》注:1、ELSE与最近的并且未被配对的ELSE配对; 2、复合,如果THEN或ELSE带有多个语句,则要用BEGIN——END括起来。二、CASE语句格式:CASE 《表达式》 OF 《值表1》:《语句1》 《值表2》:《语句2》 …… 《值表n》:《语句n》 END注:1、值表的三种表达方式:“1:”;“2,4,6:”;“10..100:” 2、CHAR,INTEGER,BOOLEAN有序第四章、循环结构程序设计一、FOR语句格式:1、FOR 《循环变量》:=《初值》 TO 《终值》 DO 《语句》; 2、FOR《循环变量》:=《终值》 DOWNTO 《初值》 DO 《语句》。:输入10个数,求最大值、最小值、和、及平均值。PROGRAM ten(input,output);VAR a,s,max,min,avg:real; i:integer;BEGIN write(’please input:’); read(a); s:=a; max:=a; min:=a; FOR i:=2 TO 10 DO BEGIN read(a); s:=s+a; IF a》max THEN max:=a ELSE IF a《min THEN min:=a END; avg:=s/i; writeln(……);END.:求s=1!+2!+3!+……+10!program sum_fac(input,output);var i,j,s,m:integer;begin s:=0: for j:=1 to 10 do begin m:=1; for j:=1 to i do m:=m*j; s:=s+m; end; write(……);end;二、while语句 格式:WHILE 《条件》 DO 《循环体》:输入一串字符串,求第一个“,”前的大小写字母个数和其它字符个数。program string(input,output);var ch:char; c,s,o:integer;begin write(……); read(ch); c:=0; s:=0; o:=0; while ch《》’,’ do begin if (ch》=’A’)and(ch《=’Z’) then c:=c+1 else if (ch》=’a’)and(ch《=’z’) then s:=s+1 else o:=o+1; read(ch); end; write(……);end.三、REPEAT语句格式:REPEAT 《循环体》 UNTIL:以字符(char)的形式读入一实数,以实形(real)输出该数。第五章、函数与过程程序设计一、函数(包括标准函数和自定义函数) 1、函数的定义 格式:FUNCTION 函数名(《形参表》):返回值类型; VAR 《变量说明》 BEGIN 《函数体》 END :1、形参表每个参数都写明其类型; 2、有且只有一个返回值,并且要将返回值赋值给函数名。 :求五边形的面积 function area(a,b,c:real):real; var p:real; begin p:=(a+b+c)/2; area:=sqrt(p*(p-a)*(p-b)*(p-c); end; 2、函数的调用 1)、函数的调用必然出现在表达式中(等号的右边),不能以单独地在语句出现 2)、调用时,将每个实参传递给对应的形参 program ml_area(input,output); var l1,l2,l3,l4,l5,l6,l7,s:real; function area(a,b,c:real):real; var p:real; begin p:=(a+b+c)/2; area:=sqrt(p*(p-a)*(p-b)*(p-c); end; begin write(’input’); readln(l1,l2,l3,l4,l5,l6,l7); s:=area(l1,l2,l6)+area(l2,l6,l7)+……; writeln(’s=’,s:10:3); end.二、过程格式:PROCEDURE《过程名》(《形式参数表》) VAR 《说明部分》 BEGIN 《过程体》 END;某过程的形参表为(var a,b:real;c,d:integer;var e:char); 主程序中有如下变量说明:x,y:real; m:integer; next:char; 则以下实参表中合法的有:(1、2、3) 1、(x,y,m+3,70,next) 2、(y,x,m,m,next) 3、(y,x,35,m DIV 10,next) 4、(m,x,30,10,next) 5、(x,y,m,10) 6、(35,0,y,m,10,next) 7、(x,y,m,m/10,next) 8、(A,B,30,10,next)求程序输出的结果。program ex(input,output);var x,y,z:integer;procedure s(x:integer; var y:integer); var z:integer begin x:=5; y:=6; z:=7; end;begin x:=1; y:=2; z:=3; s(x,y); writeln(x,y,z);end.输出结果:1 6 3:求五个数中的最大值。program max_in_5(input,output);var n1,n2,n3,n4,n5:integer;procedure lagest_in_three(a,b,c:integer;var e:integer) begin e:=a; if b》e then e:=b; if c》e then e:=c; end;begin write(’……’); readln(n1,n2,n3,n4,n5); lagest(n1,n2,n3,n1); lagest(n1,n4,n5,n1); write(n1);end.三、嵌套:计算、program Cmn(input,output);function fax(x:integer):integer: var i:integer; begin fac:=1; for i:=1 to x do fac:=fac*i; end;function c(a,b:integer):real; begin c:=fac(a)/fac(b)*fac(a-b) end;begin writeln(’c(9,3)=’,c(9,3)); writeln(’c(8,5=’,c(8,5));end.四、递归 函数或过程调用它本身,称为递归。、用递归计算n! {=m!/n!(m-n)!}program fac_n(input,output);var n:integer;function fac(n:integer):integer; begin if n=1 then fac:=1 else fac:=n*fac(n-1); end;、用递归计算 1)、function power(a,b:integer):integer; begin if b=1 then power:=a else power:=a*power(a,b-1); end; 2)、procedure power(a,b:integer;var c:integer); begin if b=1 then c:=a else power(a,b-1,c); c:=a*c; end; 、输入一串字符串(以‘.’结束)按逆顺输出program revers(input,output);procedure rever; var c:char; begin read(c); if c《》’.’ then rever; write(c); end;begin rever;end.五、标识符的作用域1、全局变量和局部变量 1)、全局变量:在主程序中被说明,作用域:整个程序; 2)、局部变量:在子程序中被说明,作用域:主程序及其下级的程序。2、子程序(function、precedure)的作用域 一个子程序可以调用它的下一级了程序,或可以调用在它之前定义的同级子程序。写出程序运行的结果。program range(input,output);var x,y:integer;procedure p1; var x,z:integer; begin x:=10; y:=y+1; z:=10; writeln(x,y,z); end;begin x:=1; y:=1; writeln(x,y); p1; writeln(x,y,z);end.结果为:(x y z)1 110 2 101 2 (error)3、在子程序中被改变值的变量可以回传的两种方法: a、变量参数 procedure(var 变量名); b、在上一级程序定义了的,且在下一级程序未被重新定义的。如果主程序的变量在子程序被重新定义,在子程序中主程序的变量被稳藏,在主程序中子程序的变量无效。

安卓上怎么用dos模拟器运行free pascal,求完整教程

如果是dos模拟器,应该是运行turbo pascal,而不是free pascal。因为free pascal是32位程序。

OK,关于freepascal教程和free pascal的函数过程大全的内容到此结束了,希望对大家有所帮助。