数学之美ran.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数学之美ran

课程名称 高等数学 任课教师 马春华 学号 1012142 姓名 冉德彤 专业 管理科学与工程 联系电话 电子邮箱 641654684@ 题目:数学之美与C语言 题目确定的依据和想法(要求不超过100字) 现在很多学C语言的人总是用着别人封装好的函数、类、库、API,慢慢的,我们就会觉得编程不过是这么回事,搭积木而已。然而,他们都忽略了程序设计的核心——算法。 构思和撰写过程(要求不超过200字) 先描述了数学和算法的联系,之后重点介绍算法的相关知识并提出了算法优劣的评判方法以及如何直观、易懂的表示算法的过程和内容,最后做出总结。 备注 写的内容中引用了许多程序设计的知识,可能不太好理解。 “高等数学(经济类)”学生课程论文说明表 (每位同学务必填写此表,并将此表作为课程论文的首页) 数学之美与C语言 冉德彤 (学院:商学院;专业:管理科学与工程类;学号:1012118) 引言:现在总是用着别人封装好的函数、类、库、API,的,我们就会觉得编程不过是这么回事,搭积木而已别人都把材料提供好了,至于材料是怎么做的,不用理会真的是这样吗?说数据结构和算法没用的人,那是因为他用不到。为什么用不到?他的层次决定了他不会接触到编程关键最核心的部分——算法。 著名计算机科学家沃思(Niklaus Wirth)提出了一个公式:算法 + 数据结构 = 程序。不止是计算机,生活中处处都有算法:要炒菜,先放盐还是先放菜需要算法;起床后,洗脸刷牙吃饭是种算法;一本广播体操的图解是种算法;一首音乐的乐谱也是种算法。由此,可以得出一个结论:算法,就是操作步骤。 1.1算法的优劣 例1.1.1 求1+2+3+…+100,即。 算法1:先算1+2,再加3,再加4,一直加到100; 算法2:; 大部分人第一眼看起来是算法二简单,因为我们是以人的角度去想问题。而对计算机来说,加法远比乘法简单,所以对编程而言,避免过多的反复乘除很重要,算法1有时比算法2要简单。 例1.1.2 求。 算法1:求1乘2,再乘3,再乘4,最后乘上5。 算法2: S1:使p=1; S2:使i=2; S3:使p*I,乘积仍放在变量p中,即p=p*I; S4:使i的值加1,即i=i+1; S5:若i不大于5,返回重新执行S3及其以后的S4和S5;否则,算法结束并输出p,得出结果。 算法1正确,但是适用性不强,假如求1000!的话,再用算法1就很麻烦了。而算法2很好的利用了计算机的特性,简化了过程,同理求1000!时只要把S5中条件改为“i不大于1000”就行了。 算法的优劣评价标准应该是时间复杂度(算法效率),空间复杂度(占用内存)指算法执行的时间,算法执行时间需通过依据该算法编制的程序在计算机上运行时所消耗的时间来度量。而度量一个程序的执行时间通常有两种方法。(1)事后统计的方法。(2)事前分析估算的方法。因事后统计方法更多的依赖于计算机的硬件、软件等环境因素,有时容易掩盖算法本身的优劣。因此人们常常采用事前分析估算的方法。一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数f(n),算法的时间量度记作T(n) = O(f(n))表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,算法的渐近时间复杂度(asymptotic time complexity),简称时间复杂度。 1.2 算法的N-S图表示 N-S图也被称为盒图或CHAPIN图。   流程图由一些特定意义的图形、流程线及简要的文字说明构成,它能清晰明确地表示程序的运行过程。在使用过程中,人们发现流程线不一定是必需的,为此,人们设计了一种新的流程图,它把整个程序写在一个大框图内,这个大框图由若干个小的基本框图构成,这种流程图简称N-S图  1.顺序结构N-S图 ??   2.选择结构N-S图 ??   3.循环结构N-S图   1)当型循环 ??   2)直到型循环 ?? 通过这几种结构的流程图,我们可以简化描述的过程,使程序的脉络更清晰。它比文字描述直观、形象、易于理解;比传统的流程图紧凑易画。 【例】画出从10个数中选出最大的数的N—S流程图: 图1.2.1 需要说明的是:上面介绍的算法表示是给人看的,即是为帮助程序开发人员阅读、编写程序而设计的一种辅助工具,而程序则必须符合计算机语言的语法规则。 程序设计的思路是这样的: 问题分析 对于接受的任务要进行认真的分析,研究所给定的条件,分析最后应达到的目标,找出解决问题的规律,选择解题的方法。 (2)设计算法 即设计出解题的方法和具体步骤。 (3)编写程序 根据得到的算法,用一种高级语言编写出源程序。 (4)对源程序进行编辑、编译和连接 (5)运行程序,分析结果 运行可执行程序,得到运行结果。能得到运行结果并不

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档