




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合。 指解决问题的确定的、有限的步骤。例:如有一圆半径R为5,求圆周长L,其步骤如下:令令R R为为5 5;令令L L为为2 23.143.14R R;输出输出L L。例:求2X2-5X-3=0两个实根的步骤,就不能作为一个算法:令令a a为为2 2,b b为为-5-5,c c为为-1-1;求求X1X1,X2X2;输出输出X1X1,X2X2。:有零个或多个数据的输入。:有一个或多个数据的输出。:一个算法应包含有限的操作步骤,而不能是无限的。:算法中每一个步骤应当是确定的,不应是含糊、模棱两可的。:算法中每一个步骤应当能有效地执行,并
2、得到确定的结果。利用计算机解决实际问题的整个过程。首先要对问题进行分析,并建立数学模型,然后考虑数据的组织方式和算法,并用某一种程序设计语言编写程序,最后调试程序,使之运行后能产生预期的结果。这个过程即为程序设计。 3:自然语言可以是中文、英文、数学表达式等,通俗易懂但表达文字可能过长,表示不太严格,对分支和循环结构表示很不方便。求数列1+2+m的值N,当N10000时结束。算法可表示如下:N=0;m=0;m加1;N加m判断N是否大于10000,如果满足条件则结束,不满足条件则再从开始继续执行。对于一个大于或等于n的正整数,判断它是不是一个素数,算法可表示如下:输入n的值;i=2;n被i除,得
3、余数r;如果r=0,表示n能被i整除,则打印“n不是素数”,算法结束;否则执行;i+1i;如果in-1,返回;否则打印“n是素数”;算法结束(或如果i ,返回;否则打印“n是素数”;算法结束) 。n4用一些符号来表示各种操作,形象直观、简单,易于理解、修改和交流。处理框判断框终点框I/O框流程线准备框用框图描述如下函数的求解过程:Y= 5 (x0)-5 (x0)startInput xX0 ?y=5y=-5Output yendNY利用介于自然语言和计算机语言之间的文字和符号来描述算法,它不用图形符号,这种表示方法书写方便,格式紧凑,容易理解,也便于向计算机语言算法转换。用伪代码表示计算10!
4、的算法:Begin(开始) 置t的初值为1(1t) 置i的初值为2(2i) 当(while) i=10,执行(do) Begin 使使t=ti 使使i=i+1 End打印t 的值(print t)End(结束)5通过菜单、项目管理器或在命令窗口中输入命令,打开编辑命令的文本编辑窗口。 MODIFY COMMAND 打开文本编辑窗口,用来建立或修改程序文件,文件名由用户指定,缺省的扩展名为.PRG。 程序中每条命令都以回车键结尾,一行只能写一条命令。若命令需分行书写,应在一行终了时键入续行符“;”,然后按回车键。 通过菜单、项目管理器或在命令窗口中输入命令,可以运行程序。 DO DO命令默认运行
5、.PRG程序(扩展名可省略),如要运行其它程序,文件名中须包括扩展名。RETURN &结束程序执行并返回到调用它的上级环境中继续。允许缺省。 CANCEL &终止程序的运行并清除程序的私有变量,返回到命令窗口。 QUIT &退出VFP系统,返回到操作系统状态。 6 在屏幕上显示“提示信息”后,暂停程序运行,等待从键盘输入数据,一旦敲“Enter”键后,停止输入数据,并将之前输入的数据赋给“To” 后面指定的内存变量。输入的数据可以是常见的C、N、D、L类型,一个问号是从屏幕下一行的第一列开始显示表达式表的结果,二个问号是从屏幕当前行、当前列开始显示表达式表的结果。“表达
6、式表”可以由一个或多个表达式组成的输出项,若多个表达式,则表达式之间用逗号“,”分隔。 (p5-1.prg)第一个命令在程序中加注释行信息,第二个命令在命令语句的尾部加注释信息。注释是不可执行的部分,它对程序的运行结果不会产生任何影响。 在屏幕上显示“提示信息”后,暂停程序运行,等待从键盘输入数据,一旦敲“Enter”键后,停止输入数据,并将之前输入的数据赋给“To” 后面指定的内存变量。 输入的数据只能是字符型数据,因此不需加定界符。7 MESSAGEBOX(,)数值数值对话框按钮对话框按钮0仅有“确定”按钮1“确定”和“取消”按钮2“放弃”,“重试”和“忽略”按钮3“是”、“否”和“取消”
7、按钮4“是”和“否”按钮5“重试”和“取消”按钮图标16 “停止”图标32 问号48 惊叹号64 信息(i)图标默认按钮0第1个按钮256 第2个按钮512 第3个按钮返回数值返回数值按下按钮按下按钮1确定2取消3放弃4重试5忽略6是7否 供用户定义信息对话框,按下一次按钮即返回一个数值。 用于指定在对话框中显示的信息文本。 用于指定对话框标题栏的显示文本。 用于根据表中的内容设定对话框中的按钮、图标和默认按钮,缺省该参数表示取0。 函数返回值是一个数值,用户将根据操作时点击的按钮来获得相应的返回值,编程时则根据返回值来设置动作。8AB条件B1B2条件B1 该结构的特点是根据条件真假,选择两个
8、或两个以上分支中的一个分支来执行。 选择结构有两种变形;一是没有B2块,条件成立时执行B1块,条件不成立时直接转到B处;二是多重选择,即有三个以上的分支供选择。 这是最简单的一种结构,语句或基本结构的执行按照它们出现的先后顺序。 A块执行完毕后,再执行B块,该结构只有一个入口,只有一个出口。A块、B块可以是一条语句,也可以是一个基本结构。 (p5-3.prg) IF ELSE ENDIF9试编一程序,删除磁盘上任一文件。试编一程序,根据输入的三角形边长,求三角形面积。 10B1B2BnBY其他条件1条件2条件nYYNNDO CASE CASE CSAE CASE OTHERWISE ENDCA
9、SE【例】编一程序,将输入的学生某门课百分制的考试成绩按下列规则自动转换成5个等级输出。转换规则为:11条件真B块LOOPEXIT假该结构的特点是根据条件,重复执行一个语句块。当给定条件满足时,执行B块,执行B块后再返回测试条件是否满足,如此循环反复执行B块,直到条件测试不满足为止。 B块可以是单个语句,也可以是基本块。该结构只有一个入口,只有一个出口。编程计算S=1+2+3+100,并求1100之间奇数之和。12编程逐行显示学生表中入学成绩大于600分的学生学号、姓名、性别和入学成绩。 编一程序,在Students.dbf表中按输入的姓名查找某学生的信息,如果找到,则显示该记录内容,如果未找
10、到,则使用信息对话框函数显示“查无此人,是否姓名输入有误?”提示信息,若是输入有误,则允许重新输入姓名查找,否则,关闭表并结束程序运行。 13编程求s=1+2+3+100。编程输出如右侧图案。编程输出如下图乘法口诀表。14在Students.DBF中找出所有入学成绩在590至600的学生的学号、姓名、性别、入学成绩,并要求在各输出行下显示一行虚线。在逐行输出Students表中女团员的姓名、性别、出生日期、是否团员和班号的信息。15模块是可以命名的一个程序段,可指主程序、子程序或自定义函数。对于两个具有调用关系的程序文件,常称调用程序为,被调用程序为,子程序的末尾中返回处必须有返回语句。*MA
11、IN.PRGDO BRETURN*B.PRGDO C1DO C2RETURN*C1.PRGRETURN*C2.PRGRETURN TO MASTER16设计一个计算圆面积的子程序,并要求在主程序中带参数调用它。*js.prgparameters r,ss=pi()*r*r retu*main.prgcleaymj=0input 请输入半径:请输入半径: to bjdo js with bj,ymj? ymj=,ymj retuDO DO | | WITH WITH RETURN TO MASTER|TO RETURN TO MASTER|TO |17公共变量PUBLIC 将指定的内存变量为公共
12、变量,并将这些变量的初值均赋以.F.公共变量一旦建立就可在任何模块中被使用,直到被从内存中清除。私有变量PRIVATE ALL LIKE | EXCEPT 声明私有变量并隐藏上级模块的同名变量,直到声明它的程序、过程或自定义函数执行结束后,才恢复使用先前隐藏的变量。VFP默认程序中定义的变量是私有变量,私有变量仅在定义它的模块及其下层模块中有效,而在定义它的模块运行结束时自动清除。本地变量LOCAL 将指定的内存变量设置为本地变量,并将这些变量的初值均赋以.F.本地变量只能在建立它的模块中使用,而且不能在高层或底层模块中使用,该模块运行结束时本地变量就自动释放18 if a+bc or b+c
13、a or c+ab l=(a+b+c)/2 s=sqrt(l*(l-a)*(l-b)*(l-c) else messagebox(“不能构成三角形”) endif returnclea s=0 input ”请输入边长a:” to a input ”请输入边长b:” to b input ”请输入边长c:” to c Do qmj ? ”三角形面积s=”,s retu 在主程序中定义的变量,如果在子程序中没有被屏蔽,就可以直接使用,并且如果在子程序中被改变,改变的结果将带回到主程序中。编程通过调用子程序,使用变量传递三角形边长数据,求三角形面积。19 在主程序调用子程序时,通过Do命令所携带的
14、With参数表来提供输入值和接收输出结果,在编写子程序时,将这些要输入、输出的变量用PARAMETERS命令来说明。充当传递数据的主程序中Do命令里With所携带的参数称为,子程序中Parameters后面与之对应的参变量称为,实参的个数必须和形参的个数相等,一一对应,各参数之间用逗号隔开,最多能传递24个参数。 if a+bc or b+ca or c+ab l=(a+b+c)/2 s=sqrt(l*(l-a)*(l-b)*(l-c) else messagebox(“不能构成三角形”) endif returnclea area=0 input ”请输入边长x:” to x input ”
15、请输入边长y:” to y input ”请输入边长z:” to z Do qmj with x,y,z,area ? ”三角形面积area=”,area retu 参数传递有和两种方式,使用值传递,则子程序中参数变化后的值不回传给上级调用程序,使用地址传递,则子程序中参数变化后的值要回传给上级调用程序。20 在计算机程序设计技术中,“错误”是指程序的功能不正常,而检测、定位并排除程序中的错误称“调试”。程序调试目的是对程序运行中出现的某些错误进行修改,并通过调试来发现可能隐藏的错误。程序中常见的错误有两类。 相对容易发现和修改,当程序运行遇到这类错误时,VFP会自动中断程序的执行,并弹出编辑
16、窗口,显示出错的命令行,给出出错信息,这时可以方便地修改错误。 发现较难,这类错误系统是无法确定的,只有由用户自己来查错,此时往往需要跟踪程序的执行,在动态执行过程中监视并找出程序中的错误。 查错技术可分为在计算机上执行程序来发现其中的错误的和用阅读程序的方法来发现其中的错误。动态检查可通过设置断点、单步执行、跟踪和设置错误陷阱的方法来检测。 VFP提供了一个“调试器”的程序调试工具,在调试器窗口中,用户选择“窗口”菜单中的相应命令可有选择地打开“跟踪窗口”、“监视窗口”、“局部窗口”、“调用堆栈窗口”和“调试输出窗口”共5个子窗口,通过调试设置、执行程序和修改程序来完成程序的调试。调试设置包括为程序设置断点,设置监视表达式,设置要显示的、数组等;执行程序有多种方式,用于观察各种设置的动态执行结果;发现错误,允许立即切入程序修改。21结构化程序设计采用自顶向下、逐步求精和模块化的分析方法。主控模块子模块1子模块2子模块3子模块21子模块22子模块11子模块12 自顶向下是指对设计的系统要有一个全面的理解,从问题的全局入手,把 一个复杂问题分解成若干个相互独立的子问题,然后对每个子问题再做进一步的分解,如此重复,直到每个问题都容易解决。 逐步求精是指程序设计的过程是一个渐进的过程,先把一个子问
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025关于明确合同履行地的法律解析
- 2025届重庆市部分区县高三5月三诊考试语文试卷(原卷版+解析版)
- 活动赞助合作协议样板
- 浙江国企招聘2025宁波市奉化区融媒文化发展有限公司招聘3人笔试参考题库附带答案详解
- 2025贵州黔西南州晴隆县顺百年养生养老服务有限公司招聘9人笔试参考题库附带答案详解
- 2025浙江温州市平阳县国渠农村供水服务有限公司招聘编外人员(劳务派遣)2人笔试参考题库附带答案详解
- 2025年中国大唐集团科技创新有限公司招聘14人笔试参考题库附带答案详解
- 2025山东济南二机床集团(平阴)产业园有限公司招聘4人(劳务外包人员)笔试参考题库附带答案详解
- 网络安全试题6及答案
- 《中医养生肝肾》课件
- 小学思政课《爱国主义教育》
- 抖音个人IP代运营服务合同
- 超实用槽式太阳能光热发电系统设计
- 2023年大北农科技奖奖励办法实施细则
- 09《马克思主义政治经济学概论(第二版)》第九章
- 启动调试期间设备代保管管理制度
- 妇产科学教学课件:女性生殖系统炎症
- 大学关于进一步改进工作作风、密切联系师生的若干规定
- 作风建设试题
- 导线测量等级划分及精度要求
- 国土空间规划一张图建设管理及应用
评论
0/150
提交评论