实验12 递归与外部子程序.doc

实验12 递归与外部子程序.doc

ID:52199036

大小:168.00 KB

页数:5页

时间:2020-03-24

实验12 递归与外部子程序.doc_第1页
实验12 递归与外部子程序.doc_第2页
实验12 递归与外部子程序.doc_第3页
实验12 递归与外部子程序.doc_第4页
实验12 递归与外部子程序.doc_第5页
资源描述:

《实验12 递归与外部子程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验十二递归与外部子程序递归子程序是FORTRAN90新增的功能之一,递归子程序适用于对递归问题的求解。对于递归问题,使用递归子程序求解,将大大降低程序设计的难度。一般情况下,应尽可能将求解问题描述成递推或递归问题,以便使用递归子程序求解。递归子程序分递归函数子程序和递归子例行程序,递归子程序定义类似于普通子程序,不同之处是在FUNCTION或SUBROUTINE语句之前增加一个RECURSIVE属性关键字前缀。外部子程序是出现在主调程序单元之外的子程序,外部子程序和主程序可单独保存在不同的源程序文件中,可分别独立编

2、译。外部子程序可用于大型复杂的程序设计,可实现多人并行(同时)、协调、合作开发大型复杂程序。使用外部子程序,有时需要在主调程序单元中通过EXTERNAL语句声明。外部子程序分外部函数子程序和外部子例行程序,外部子程序类似于普通子程序,不同之处是出现在主调程序单元之外。本次实验是学习和掌握递归和外部子程序的一次系统实验活动。通过本次实验,能够熟练使用递归和外部子程序设计和编写程序,求解比较复杂的实际问题。一.实验目的1.了解递归概念,掌握递归问题的求解方法。2.掌握递归子程序定义、调用、参数传递关系的基本内容和使用规则

3、。3.了解外部子程序概念,掌握并行、协调、合作编写大型复杂程序的方法。4.掌握外部子程序定义、调用、参数传递关系的基本内容和使用规则。5.掌握使用递归和外部子程序设计和编写程序的方法。二.实验内容11.问题描述已知:计算当x=2.85,n=15时的函数值。使用递归函数求解该问题。编写程序实现之。x和n的值从键盘输入。-87-2.算法设计函数f可用以下递推公式描述。根据递推公式,学生自行设计递归函数求解算法。3.程序编写根据递推公式和递推求解算法,学生自行编写程序,要求使用递归函数子程序实现。4.实验要求l分析问题,设

4、计算法,编写程序,要求使用递归函数子程序实现。l函数计算必须使用递归函数子程序实现。l输入输出数据采用有格式输入输出,使输入输出数据规范、醒目、简洁。l在D盘上创建新工作区:shiyan12和新项目:xm121。l在项目xm121内创建源程序文件:xm121.f90,同时在文件中编辑输入程序。l在项目xm121内编译、构建、运行、调试程序。l将输出结果以注释形式编辑输入到源程序文件xm121.f90末尾。5.实验步骤l分析问题,设计算法,编写程序。l启动软件开发环境MicrosoftDeveloperStudio。l

5、在D盘上创建新工作区:shiyan12。l在工作区shiyan12内创建新项目:xm121。l在项目xm121内创建源程序文件xm121.f90,编辑输入源程序文本。l编译、构建、运行、调试程序,输入x和n的值:2.85,15,得到输出结果。l输出结果以注释形式编辑输入到源程序文件末尾。三.实验内容21.问题描述已知勒让德多项式:计算当x=4.58,n=12时函数值。使用递归函数求解该问题。编写程序实现之。x和n的值从键盘输入。-87-2.算法设计勒让德公式已经是一个递推公式,为了便于编写递归函数,可写成以下形式:根

6、据递推公式,学生自行设计递归函数求解算法。3.程序编写根据算法,学生自行设计和编写程序,要求使用内部子例行程序实现。4.实验要求l分析问题,设计算法,编写程序,要求使用递归函数子程序实现。l在工作区shiyan12内创建新项目:xm122。l在项目xm122内创建源程序文件:xm122.f90,同时在文件中编辑输入程序。l在项目xm122内编译、构建、运行、调试程序。l将输入数据和输出结果以注释形式编辑输入到源程序文件xm122.f90末尾。5.实验步骤l分析问题,设计算法,编写程序。l在工作区shiyan12内创建

7、新项目:xm122。l在项目xm122内创建源程序文件xm122.f90,编辑输入源程序文本。l编译、构建、运行、调试程序,输入x和n的值:4.58,12,得到输出结果。l将输出结果以注释形式编辑输入到源程序文件末尾。四.实验内容31.问题描述已知5×5矩阵A:12402018112517503045241614541548201038285219283542按以下要求完成操作:(1)从键盘输入矩阵数据;(2)从屏幕输出矩阵数据;(3)将第2行与第4行交换;(4)从屏幕输出交换后矩阵数据;-87-(1)求矩阵中绝对值

8、最小元素值,及所在行号和列号;(2)用绝对值最小元素值与所在行、列每个元素相加;(3)从屏幕输出相加后矩阵数据;(4)结束对于矩阵输入、矩阵输出、矩阵元素交换、求矩阵绝对值最小元素值、绝对值最小元素值与所在行列元素相加五类操作,使用外部子例行程序实现。要求外部子例行程序与主程序单元分别保存在不同的源程序文件中。编写程序实现之。2.算法设计分析问

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。