噶米《程序设计专题实践》指导书.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
执 笔 人:杨崇 实验一 利用梯形法求函数的积分。 一 实验目的: 通过实验了解并掌握利用计算机实现数值计算的基本原理与方法, 了解数学理论与利 用计算机进行实际应用的联系与区别, 培养针对数学模型进行建模的能力, 掌握计算特殊 函数积分的基本方法和技巧。 二 实验内容: 在 Turbo C 平台下编程利用梯形法求出使用常规方法无法求出原函数的特殊函数的 1 sin x dx 。要求将积分结果的精度控制在要求的范围内。 积分值,积分函数为 x 0 三 实验原理: 普通的函数可以通过寻找原函数求得定积分值,而某些特殊函数是无法找到原函数的, 那么,利用牛顿-莱布尼兹公式求积分法将无所适从,通过积分中值定理我们知道:在积 分区间[ a,b]内存在一点 ξ,成立 b ξ f ( x) dx a 的矩形面积恰等于所求曲面梯形的面积。 问题在于点 ξ的具体位置一般是不知道的, 因而 难以准确 f(ξ)的值。我们将 f(ξ)成为区间[ a,b]上的平均高度,这样,只要对平均高度 f(ξ )提供一种算法,相应地获得一种数值求积分法。如果我们用两个端点的高度 f(a),f(b) 取算术平均值作为 f(ξ )的近似值,这样导出的求积公式 = b a [f(a)+f(b) ] 便是我们所熟 2 悉的梯形公式。 设将积分区间[ a,b]划分为 n 等份,步长 h=(b-a)/2 ,分点为 xk h 。 =a+k ,k=0,1,2,3, ..,n 利用低阶的牛顿—轲特斯公式求得每个子区间 [xk k+1 上的积分值 k ,x ] I ,然后再求和,用来作 为所求积分 I 的近似值。 n 1 h [f(xk)+f]x k+1) ]= h [f(a)+2 复化梯形公式: Tn= k 0 2 2  n 1 f(xk)+f(b) ]。 k 0 四、实验步骤 打开开始 -程序 -附件 -命令提示符,进入 Turbo C 2.0,输入程序。 按 F2 存盘。 按 F9 键检查语法是否存在错误。 按 Ctrl +F9 运行程序,调试编译。 五、实验中应注意的问题: 1 当变量值为 0 时,根据罗必塔法则函数值取 1。 2 对步长进行运算时,应采用 for 循环,可避免产生死循环。 3 运算时数值类型应为 float 或者 double,打印数据时,小数点后应保留足够的位数。 在取除数时,由于使用了实型数据,因此分子或分母的数字部分也应该采取实数形式:如 1.0/x,否则将无法得到正确结果。 上机时应注意随时存盘, 尤其是调试时, 避免因为死循环造成无法正常退出而丢失源文件或数据。 六、实验报告内容: 实验原理及实现方法。 上机源程序代码。 实验结果。 误差分析。 实验二 矩阵的运算 一 实验目的: 通过实验了解并掌握利用计算机实现矩阵计算的基本原理与方法, 了解数学抽象概念在实际应用中的引用和计算方法、技巧,培养针对数学模型进行建模的能力,掌握矩阵的基本运算方法。 二 实验内容: 在 Turbo C  平台下编程求出矩阵的加/减,以及  M×N  矩阵和  N×M  矩阵的乘运算。 三 实验原理: 矩阵实际上就是一张表,可以认为是数的集合,它表示了一个一维、二维、空间的抽象特征。本实验涉及的是二维矩阵。 矩阵在进行加/减运算时, 进行运算的两个矩阵必须是行数必须相同, 列数也必须相同。也就是说 M ×N 的矩阵 A 只能与 M× N 的矩阵 B 进行运算,运算的规则是: Cij =Aij ±Bij 矩阵在进行乘运算的时候,进行运算的两个矩阵应为 M×N 矩阵乘以 N×M 的矩阵, 反之亦然,但相乘的结果可能不同,运算规则是: n Cij = Aik Bkj (i=1,2, m,j=1,2, ,n) k 1 在计算机中,矩阵的存储方式是以数组的方式以行为主或以列为主的形式存放在内存 中, C 语言的缺省存储方式是以行为主。 利用二维数组存储矩阵的时候,应当注意, C 语言定义数组的下标起始值为 0,即第 一个元素的下角标为 (0,0) 而不是(1,1),第 (M,N) 个数据的下角标为 (M-1,N-1) 。 四、实验步骤 打开开始 -程序 -附件 -命令提示符,进入 Turbo C 2.0,输入程序。 按 F2 存盘。 按 F9 键检查语法是否存在错误。 按 Ctrl +F9 运行程序,调试编译。 五、实验中应注意的问题: 1 C 语言数组下角标的定义特性, 如数组个数为 N,则下角标从 0 开始到 N-1 结束上机时应 充分考虑这一特点,防止下标越界。 2 矩阵运算时,循环结构采用 for 循环,避免死循环的发生。 数据类型的定义要统一,不同类型的矩阵是不可以进行运算的。 打印运算结果时,矩阵的打印要遵照一定的格式

文档评论(0)

152****6621 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档