从行列式计算器浅谈信息与计算科学专业.doc_第1页
从行列式计算器浅谈信息与计算科学专业.doc_第2页
从行列式计算器浅谈信息与计算科学专业.doc_第3页
从行列式计算器浅谈信息与计算科学专业.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

从行列式计算器浅谈信息与计算科学专业数学学院信息与计算科学专业,一个被冠之于数学中的计算机矫楚,计算机行业数学精英之名,曾经在中国红火一时的强势学科。但如今,随着IT行业竞争压力的加大,该专业又被参差不齐院校胡乱开设,使得本专业学生不能如愿择业,相关企业又不能招到理想人才,造成两难境地。同时该专业学生又对自己专业不抱希望,学习任务变成了一种莫名的负担。这使本来应该是数学功底很牢固理性思维较强的专业学生在处理问题上却不尽人意。也许这是该专业的现状,但不是最终的结果。毕竟是数学专业,同时还有丰富的计算机课程进行拓展,我想我们还是有一定优势与潜力的。几天来相继听了我校众位数学专家带来的数学讲座,有触动也有启发。多数内容以本专业课程为引导,简单介绍了该门课程的发展历史与现代应用。虽然并没有深入地讲解课程内容与专业知识,但使我们对即将要学的一些课程有了初步了解。不管是已经学过的高等代数还是将要学的运筹学与最优化问题,不管是深入浅出数学分析讲解还是环环相扣的概率论剖析,都充分展现着数学的魅力。在此,我仅从本人曾经编写的一个程序入手,简单对专业问题进行谈论。学过高等代数或线性代数的都知道,矩阵的一系列计算相当麻烦,尤其是当用笔算时那是相当费时费力。最早学行列式的时候我就想找一个能解决这些计算问题的程序,但最终未果。然在之后学习了C+面向对象程序设计课程后,我想应用高代知识加上一点编程技巧解决行列式计算问题应该算不了什么吧。事实总是不随人愿的,从最早计划开始并初步实施到最终完成的过程经历了数月,期间还是在不断对C+的深入了解,才使程序逐步完善到可行。由于一阶二阶行列式的简单易算性,那么就先从三阶行列式做起吧。最容易想到的便是用定义去求解,也是我最早的想法。大致如下:由于当时并没有学到数列的记法,则分别设9个变量记做a1,a2.a9,并为了使计算更清晰添加了六个辅助变量记做m1,m2.m6,之后便是公式的套用:m1=a1*a5*a9;m2=a1*a6*a8;m3=a2*a4*a9;m4=a3*a5*a7;m5=a3*a4*a8;m6=a2*a6*a7;行列式的结果就是:M=m1+m5+m6-m2-m3-m4。这样虽然可以将三阶行列式的值准确无误的算出来,可是在程序的简易性和可扩展性上都有欠缺。也可以说纯粹是为了算三阶行列式而编写的。那么当然不能满足于此,我便想更进一步尝试,起码也先要能算到四阶的吧。既然是计算高阶行列式,那么理所当然想到的是上三角行列式的应用计算。众所周知,所有行列式都可以化成上三角行列式的形式再使对角线上的数相乘便是其值。并且,目前几乎所有的笔算解题都是用这个方法。那用到程序中应该是毫无问题的吧。但是情况并非所想的那样,所遇到的一系列问题都相当麻烦。首先是为了程序的简约型与可扩展性,我更换了键入方式,从之前的按行按列的直接键入改成按正方形法键入。自以为这样可以更加省时省力,使程序拓展性更强。然这种方法本身原理上是没有多大问题的,可是在实际操作上确是非常容易出错,也就是操作性十分不理想。不过这个问题并非是致命的。由于要把行列式转化成上三角行列式,必不可少的要涉及到这样的式子:a22-a12*a21/a11,a32-a12*a31/a11等。其中会出现a11作为被除数,然当a11等于0时,运行时便会出错。那么试着加一个if/else判断句来进行筛选变换呢,新的问题便来了。由于做被除数的元素不止一个,又或行变换后的值依然为0,使得必须动用大量的判断句。如此不仅没有使程序简化,还将问题弄得更加复杂晦涩。如此一来我的工作基本就停在了这里。直到学习了数组的表示与函数的处理我才有了下一步的计划:用降阶公式求高阶行列式。方法如下,构建一个函数比如是求二阶行列式,为range_2(float b11,float b12,float b21,float b22)。而三阶行列式对于二阶行列式又有降阶关系公式进行联系,便可以将三阶行列式求值函数定义为:float range_3(float a11,float a12,float a13,float a21,float a22,float a23,float a31,float a32,float a33) float A31,A32,A33; float M; A31=range_2(a12,a13,a22,a23); A32=range_2(a11,a13,a21,a23); A33=range_2(a11,a12,a21,a22); M=a31*A31-a32*A32+a33*A33; return M;依法炮制便可得出四阶、五阶行列式的值。尤其是在学了数列的表示法后,使键入程序也变得简单,只构造一个二维数组a55,再利用二重循环即可:for(int i=0;i5;i+)for(int j=0;jaij便可直接按序输入行列式各元素进行计算。可以有效的解决这样问题,同时保留了可扩展性。在此后又学习类与对象的应用,代数方面也涉及到了诸如矩阵的乘法、矩阵的逆等一系列问题。乘法问题还是比较好解决的,以四阶矩阵为例:class RANGE public: void chengfa(RANGE &N); float a44;void RANGE:chengfa(RANGE &N) float b44; for(int i=0;i4;i+) for(int j=0;j4;j+) bij=ai0*N.a0j+ai1*N.a1j+ ai2*N.a2j+ai3*N.a3j; cout矩阵的乘积是:n; for(int i=0;i4;i+) for (int j=0;j4;j+) coutsetw(4)bij ; coutendl; int main() RANGE A,B; cout来计算矩阵的乘积!n; cout请输入称号左边的矩阵:n; for(int i=0;i4;i+) for (int j=0;jA.aij; coutn请输入称号右边的矩阵:n; for(int i=0;i4;i+) for (int j=0;jB.aij; A.chengfa(B); return 0;而矩阵的逆与伴随只需调用更低一阶的函数行列式函数即可,虽然过程略有繁复,不过也可计算得出,在此就不赘述了。在解决这样一个问题时,便要同时运用到数学知识与计算机编程理论,对于我们这样专业的学生正是拿手问题。也许只是一些简单知识的运用,但不可争议的是用计算机解决数学问题已是发展的必然,而数学能力又制约着计算机能力的发展水平,二者相辅相成。所以说信息与计算科学这个专业还是有巨大的发展潜力。信息与计算科学专业是以信息领域为背景,数学与信息、管理相结合的交叉学科专业。该专业培养的学生具有良好的数学基础,能熟练地使用计算机,初步具备在信息与计算科学领域的某个方向上从事科学研究,解决实际问题,设计开发有关软件的能力。而本专业的考研方面:数学类的研究生专业大致有基础数学,应用数学,概率论与数理统计,计算数学,运筹学与控制论。 基础数学以后的发展方向基本是从事理论研究,如果想留在高校得继续读博;应用数学可以到企业从事应用类的工作;概率论与数理统计可以去金融机构,从事经济方面的工作;计算数学偏向计算机;运筹学与控制论偏向自动化。也有人说本科学理,读研学工,可以更好的发展与学习。确实也是,在数学方面夯实了基础,以后学什么有谁是水到渠成。世界正在走向以数字化为特征的信息时代,信息与计算科学无疑是这个进程中最重要的学科之一,而数学是信息科学走向成熟与辉煌基础,数学能使信息技术的发展如虎添翼。信息与计算科学专业,以数学为基础、信息为对象、计算机为工具,面向高科技,强调敏锐的数学思维和良好是数学修养,培养前瞻性、开拓性的信息科学人才。一、二年级在主要学好几门基础数学课程的同时,熟练掌握计算机编程和数学软件的使用。三、四年级在进一步加强数学基础的同时主要学习信息科学、网络技术、大规模科学计算、优化理论和方法等课程。在学习安排上留有充分的余地,供学生涉猎有兴趣的学科前沿,开拓知识面,注意培养学生的创新意识和全面素质。信息与计算科学专业开设的主要课程有:数学分析、高等代数、解析几何、常微分方程、概率论、数值分析、实变函数、泛函分析、偏微分方程及其数值解、信息论、数学建模与试验、运筹学、最优化原理、编码理论、数据库原理及应用、操作系统原理、数据结构与算法、面向对象程序设计B、计算机图形学与可视化、算法导论、图形与图像处理、Java语言。看到这些课程可以了解这个专业的发展方向与就业前途。喜欢编程的可以去考个JAVA的SUN认证,喜欢系统集成的可以去学学MCSE、学学LNUX,喜欢网络的可以考思科华为,喜欢安全的可以考考CIW,还有国内的软考网络工程师软件设计师系统分析师等等.别说这些证书难考,作为大学生你有充足的时间去学习去培训。人家专科出来的都在拼命考我们为什么不行?更何况信计专业有先天的思维优势。对计算机不感兴趣的也可以去学学经济类或者其他行业的知识。以考带学充实自己。你有别人没有的专业技能,应聘者当然会关注你。所以,总的来说,信息与计算科学就业说起来还是比较广的,毕业生在毕业以后,可以在信息与计算科学、计算机信息处理、经济、金融等部门从事研究、教学、应用软件开发或者是管理部门从事一些实际应用、开发研究或者管理工作。或者在信息与计算机信息专业去读研究生。学生毕业后也适合在企事业单位、高科技部门、高等院校、行政管

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论