当前位置:文档之家› 计算机程序设计基础—FORTRAN实验设计报告线性方程组求解问题

计算机程序设计基础—FORTRAN实验设计报告线性方程组求解问题

计算机程序设计基础—FORTRAN实验设计报告线性方程组求解问题
计算机程序设计基础—FORTRAN实验设计报告线性方程组求解问题

中南大学

本科生课程设计(实践)任务书、设计报告

(计算机程序设计基础—FORTRAN)

题目线性方程组求解问题

学生姓名陈晨

指导教师刘胤宏

学院土木工程学院

专业班级土建类工程试验班

学生学号18

计算机基础教学实验中心

2012年 6 月29日

Fortran课程设计实验报告

之线性方程组求解问题题目重现:

一物理系统可用下列线性方程组来表示:

从文件中读入m1、m2和θ的值,求a1、a2、N1 和N2的值。其中g取9.8,输入θ时以角度为单位。

要求如下:

(1)分别用两种方法(例如高斯消去法、矩阵求逆法、三角分解法、追赶法等),定义求解线性方程组Ax=b的子程序,要求该子程序能求解任意线性方程组。(2)在主程序中分别调用上面定义的两个子程序,并对求解结果进行对比分析。(3)绘制以上两个方法所求得的方程解的数据分布图。

题目分析:

1文档收集于互联网,如有不妥请联系删除.

.

初看题目,MY GOD !这辈子没见过这么复杂奇葩的方程组。而脑袋里那些应付考试还可以的少的可怜的Fortran 基础知识,更是直接缴械投降,无地自容了。不愧是大学,不愧是让无数土木人工科男竞折腰的Fortran 课程设计。好吧,虽然极度怀疑自己的智商,但不战而屈己之兵又不是我土木人的性格。打开电脑,摩拳擦掌,Fortran ,老子来了!

我们的目的地是,线性方程组的解,通往目的地的道路有好几条,Gauss 大道,矩阵求逆之道,还有两条小路:三角分解与追赶之径。目前的情况是,小道路黑路不熟,大道倒是有星点的光。果断走大道嘛。开发思想嘛,对于解这样一个复杂的线性方程组,聪明的人类是不会傻乎乎自己去做的。于是,我们把这个繁琐的工作交给任劳任怨的计算机吧,省下我们大好年华去干更多有意义的事情。那么,我决定将这项任务交给fortran 了,既然没人反对,那就这么定了 。

废话不多说了,直接上图。

系统结构图:

,1

程组。

C语言程序设计课程设计题目

1 一元稀疏多项式的运算 问题描述:设有两个带头指针的单链表表示两个一元稀疏多项式A、B,实现两个一元稀疏多项式的处理。 实现要求: ⑴输入并建立多项式; ⑵输出多项式,输出形式为整数序列:n,c1,e1,c2,e2……c n,e n,其中n是多项式的项数,c i,e i分别为第i项的系数和指数。序列按指数降序排列; ⑶多项式A和B相加,建立多项式A+B,输出相加的多项式; ⑷多项式A和B相减,建立多项式A-B,输出相减的多项式; ⑸多项式A和B相乘,建立多项式A×B,输出相乘的多项式; ⑹设计一个菜单,至少具有上述操作要求的基本功能。 测试数据: (1) (2x+5x8-3.1x11)+(7-5x8+11x9) (2) (6x-3-x+4.4x2-1.2x9)-(-6x-3+5.4x2+7.8x15) (3)(x+x2+x3)+0 (4)(x+x3)-(-x-x-3) 2 成绩排序 假设某年级有4个班,每班有45名同学。本学期有5门课程考试,每门课程成绩是百分制。假定每个同学的成绩记录包含:学号、姓名各门课程的成绩共7项,其中学号是一个10位的字符串,每个学生都有唯一的学号,并且这4个班的成绩分别放在4个数组中,完成以下操作要求: ⑴编写一个成绩生成函数,使用随机数方法,利用随机函数生成学生的各门课程的成绩(每门课程的成绩都是0∽100之间的整数),通过调用该函数生成全部学生的成绩; ⑵编写一个平均成绩计算函数,计算每个同学的平均成绩并保存在成绩数组中; ⑶用冒泡排序法对4个班的成绩按每个同学的平均成绩的以非递增方式

进行班内排序; ⑷用选择排序法对4个班的成绩按每个同学的平均成绩的以非递增方式进行班内排序; ⑸对已按平均成绩排好序的4个班的同学的构造一个所有按平均成绩的以非递增方式排列的新的单链表; ⑹设计一个菜单,至少具有上述操作要求的基本功能。 3 迷宫问题 问题描述:以一个m×n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。 实现要求: ⑴实现一个以链表作存储结构的栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向。 ⑵编写递归形式的算法,求得迷宫中所有可能的通路; ⑶以方阵形式输出迷宫及其通路。 [测试数据] 迷宫的测试数据如下:左上角(1,1)为入口,右下角(8,9)为出口。 1 2 3 4 5 6 7 8 实现提示:

实验设计报告

创新思维实践 实验设计报告 实验名称萃取实验 实验报告人学号 13 班级 090233 同组人 实验日期年月日 室温大气压 指导老师 评分

实验名称:萃取实验 一、实验目的 1.了解转盘萃取塔的结构和特点; 2.掌握液—液萃取塔的操作; 3.掌握传质单元高度的测定方法,并分析外加能量对液液萃取塔传质单元 高度和通量的影响。 二、基本原理 萃取是利用原料液中各组分在两个液相中的溶解度不同而使原料液混合物得以分离。将一定量萃取剂加入原料液中,然后加以搅拌使原料液与萃取剂充分混合,溶质通过相界面由原料液向萃取剂中扩散,所以萃取操作与精馏、吸收等过程一样,也属于两相间的传质过程。 与精馏,吸收过程类似,由于过程的复杂性,萃取过程也被分解为理论级和级效率;或传质单元数和传质单元高度,对于转盘塔,振动塔这类微分接触的萃取塔,一般采用传质单元数和传质单元高度来处理。传质单元数表示过程分离难易的程度。 对于稀溶液,传质单元数可近似用下式表示: ?-=1 2 x x *OR x x dx N (1) 式中: N OR ——萃余相为基准的总传质单元数; X ——萃余相中的溶质的浓度,以摩尔分率表示; x*——与相应萃取浓度成平衡的萃余相中溶质的浓度,以摩尔分率表示。 x 1、x 2——分别表示两相进塔和出塔的萃余相浓度 传质单元高度表示设备传质性能的好坏,可由下式表示: OR OR N H H = (2) Ω =OR x H L a K (3) 式中: H OR ——以萃余相为基准的传质单元高度,m; H —— 萃取塔的有效接触高度,m; K x a ——萃余相为基准的总传质系数,kg/(m 3?h ?△x); L ——萃余相的质量流量,kg/h; Ω——塔的截面积,m 2 ; 已知塔高度H 和传质单元数N OR 可由上式取得H OR 的数值。H OR 反映萃取设备传质性 能的好坏,H OR 越大,设备效率越低。影响萃取设备传质性能H OR 的因素很多,主

程序设计基础实验报告

《程序设计基础》 实验报告 专业班级: 姓名: 学号:

实验一 面向过程的简单程序设计 1.实验目的要求 (1) 使用C++语言编写简单的计算机程序,掌握C++程序从编辑、编译到运行的全过程, 初步了解C++程序的特点。 (2) 掌握C++语言的数据类型(包括对各种数据类型变量的定义、初始化、赋值等)、运 算符和表达式的使用。 (3) 掌握赋值语句的使用。 (4) 掌握数据的输入输出方法。 2.实验内容 (1)设计简单程序,分别计算下列表达式,式中变量由键盘输入,输出表达式的值。 <1> d c b a x -++ <2> 11 11+++x x <3> sinX+cosX+tan -1 X <4> e x+y +e x-y <5> log 10(1+21x +) <6> 22b a -+??b a - (其中??a 表示取不大于a 的最大整数)。 <1> #include using namespace std; int main() { float x,a,b,c,d,e; cin>>x>>a>>b>>c>>d; e=x+(a+b)/(c-d); cout< #include #include using namespace std; int main() { double x,y; cin>>x; y=sqrt(1+1/(x+1/(x+1)));

cout< #include #include using namespace std; int main() { double x,y; cin>>x; y=sin(x)+cos(x)+1/tan(x); cout< #include #include using namespace std; int main() { double x,y,z; cin>>x>>y; z=exp(x+y)+exp(x-y); cout< #include #include using namespace std; int main() { double x,y; cin>>x; y=log(1+sqrt(1+x*x)); cout< #include #include using namespace std; int main()

程序设计基础课程设计

设计题目:学生成绩管理系统班级:计0902 姓名:付乐颖 学号:20091221067 完成日期:2010.10.15

1. 课程设计目的和要求 随着科学的发展和社会的进步,许多过去有人工处理的繁杂事务开始交付计算机来完成。学生成绩管理系统可以说是一个得力助手,它利用计算机对学生成绩进行统一管理,实现学生成绩信息管理工作流程的系统化、规范化和自动化,提高了广大教师的工作效率。 本程序旨在训练学生的基本编程能力,了解管理信息系统的开发流程,熟悉C语言的文件等的各种基本操作,使学生能对C语言的文件操作有一个更深的理解。为进一步开发出高质量的信息管理系统打下坚实的基础。 2. 课程设计任务内容 学生包含以下信息项:学号、姓名、学院、班级、高数成绩、英语成绩、C语言成绩、总分、平均分。系统的主要功能包括: 1. 创建学生成绩信息文件,根据提示输入学生的各项信息,计算出总分和平均分,然后按学号对学生信息进行排序,并将排序后的学生成绩信息存储到一个二进制文件中。 2. 增加学生信息,在原有学生信息文件的基础上增加新的学生成绩信息,要求:增加后的学生信息仍按学号排序,并继续保存至原文件。 3. 删除学生信息,提示用户输入要进行删除操作的学号,如果在文件中有该信息存在,则将该学号所对应的学生信息删除,否则输出提示信息,并提示用户选择是否继续进行删除操作。 4. 修改学生信息,提示用户输入要进行修改操作的学号,如果在文件中有该息存在,则将提示用户输入该学号对应的要修改的选项,结果保存至原文件,并提示用户选择是否继续进行修改操作。 5. 按不同条件对学生信息进行查询操作,输出满足条件的学生信息。 (1) 按学号查询,输入一个学号,输出对应的学生信息。

mfc实验设计报告Word版

《面向对象程序设计》数学与计算机学院 VC++课程设计 设计题目:学生信息管理系统 学生学号:1007020304 学生姓名:刘正 学生专业:信息与计算科学 学生班级:10级信计三班 指导老师:李建湘 制作时间:2011年12月14日

目录 一、前言 (2) 二、系统需求分析 (3) 三、程序设计思路 (3) 四、模块分析 (5) 五、主要功能图示及代码 (9) 六、创新内容 (17) 七、存在的问题与不足 (17) 八、收获与感想 (18) 九、程序其它重要源代码 (19) 十、后记 (27) 十一、参考文献 (28)

前言 作为大二的一名学生,我们已经学习汇编语言快一年了,但是自己从来没有做过一个有实用价值的程序。总是怀疑我们学的c语言,c++以后会有用吗?几乎都是编写一些数学计算题。直到老是教我们MFC编程后,才知道应用程序的设计过程。说实话,在课程设计之前,我没有听过什么MFC编程,所以在设计的过程中也是困难重重,每走一步都是相当艰难的。从开始设计到完成设计,我花了两个多星期,中间重做了无数次。真的难以想象爱迪生发明电灯时是怎么熬过来的。这个程序虽然不完美,但是花了我不少的心血。这将是我程序生涯的开始! 学习MFC编程,最重要的就是自学。刚开始,什么都不懂,为什么要这么做?好多函数都不不知道是干什么用的,更不用说使用它们。因此,不得不借助图书馆和网络了解它们。MFC函数库很庞大,我这次用到的微乎其微,以后还得不断的学习和熟悉。一个那么庞大的函数库,我们该如何掌握它呢?通过这半个多月的学习,我个人觉得最重要的就是多练习,只有不断的练习,才能掌握它们的规律,帮助我们学好MFC函数库。 接下来,我将把这些天的成果在这里展现出来,与大家一起分享这份来之不易的喜悦!

大学程序设计基础实验报告 (2)

**大学程序设计基础实验报告 实验名称:实验三分支结构 实验目的: 1、掌握IF-ELSE语句使用。 2、掌握ELSE-IF语句使用。 3、熟悉SWITCH语句使用。 实验内容: 在本地电脑中新建一个文件夹,用于存放C程序,文件夹的名字要求是“学号姓名-实验序号”,如E:\ 1920115555张三-03。启动C-Free,完成如下各题。 1、编程题:输入参数a,b,c,求一元二次方程ax2+bx+c=0的根(①a、b、c都为0,②a 和b为0,c不为0,③a为0,b不为0,c任意,④a不为0,且a、b、c满足b2-4ac ≥0,⑤a不为0,且a、b、c满足b2-4ac<0)。 2、编程题:输入职工的月薪salary,计算并输出应缴纳的个人所得税tax。tax=rate * (salary –850),rate的计算方式如下: 当salary <= 850,则rate = 0; 当850 < salary <= 1350,则rate = 5%; 当1350 < salary <= 2850,则rate = 10%; 当2850 < salary <= 5850,则rate = 15%; 当salary > 5850,则rate = 20%;。 3、编程题:根据输入的3个边长a、b、c,判断它们是否能构成三角形,若能构成三 角形,则进一步判断此三角形是哪种类型的三角形(等边三角形、等腰三角形、直角三角形和一般三角形。等腰直角算作等腰)。 4、编程题:输入一个形式如“操作数运算符操作数”的表达式,对2个整数进行乘、 除或求余运算。【请分别用if语句和switch语句实现此题功能】 上交作业的方法: 1.将程序代码及注释和运行程序的窗口复制到实验结果下方对应的题号上,并把这 次实验上机操作中遇到的问题及解决方法、心得等填好完成实验报告。 2.保存以上所有按要求已调试通过,并形成.c(或.cpp)和.exe文件到以自己的“学 号姓名-03”命名的文件夹中,并将以自己的“学号姓名”命名的文件夹压缩后上 交到ftp://10.172.250.252:1161中的“作业上传”文件夹下的“报告上交02”文件 夹下的子文件夹“源文件压缩上交”中,同时把以“学号姓名-03”命名的word 文档上交到“报告上交03”文件夹下的另一子文件夹“word文件上交”中。 特别提醒:每次上传的文件名一定要是“学号姓名-实验序号. doc”(如1720115555张

程序设计基础课程设计报告 内容样例

第一章目的与要求 书上有。 第二章需求分析 软件设计的一个重要的环节就是需求分析。本章在对ATM取款机管理系统的应用情况作了全面调查的基础上,确定系统目标,并对系统所需要的基础功能进行分析,从而确定用户的需求。以下是ATM取款机管理系统所需要的需求分析。 ATM管理系统包括六个模块:登录,挂失功能,修改密码,取款功能,转账功能,查询功能。 ①登录: 输入银行卡的账号,密码,验证银行卡的卡号,密码是否正确,之后进入主界面 ②挂失功能: 确认是否对银行卡进行挂失,挂失后账户无法操作 ③修改密码: 用户可自由对其银行卡密码进行修改,修改之后的新密码将会覆盖其原密码 ④取款功能: 用户可自由取得所持银行卡内的存款,所取款数必须在其原有账户余额之内 ⑤转账功能: 用户可将本账户中的存款转入其他账户,转账过程中,需要转入账户的账

号 ⑥查询功能: 用户可查询用户信息,其中包括用户姓名、用户身份证号码、银行卡号以及存款余额 模拟ATM取款机的操作: 首先录入账户信息,格式如下 ㈠、登录功能:输入帐号和密码进行登录,如密码错误提示重新输入密码,如帐号错误提示无此帐户。 ㈡、查询功能:查询账户余额。 ㈢、取款功能:取款,更新余额。 ㈣、挂失功能:挂失后,该账户不能进行任何操作。 ㈤、修改密码:输入原密码和新设置密码。 ㈥、转账功能:输入转账的转出账户以及转账金额,进行转账。

第三章设计分析 3.1、ATM系统管理 3.1.1系统基本功能 首先,确定系统中存在两种用户,一种是ATM,可以进行信息录入和后台管理。另外一种是取款人,取款人主要是进行信息的查询,不能进行信息录入。所以在创建类的时候,先创建一个ATM类,然后创建取款人类,并与ATM 类形成有元,进而继承ATM的所有功能,并添加录入信息的功能。 基本功能: 登录功能---------输入帐号和密码进行登录,如密码错误提示重新输入密码,如帐号错误提示无此帐户。 查询功能---------查询账户余额。 取款功能---------取款,更新余额。 挂失功能---------挂失后,该账户不能进行任何操作。 修改密码---------输入原密码和新设置密码。 转账功能---------输入转账的转出账户以及转账金额,进行转账。、

辉光盘实验报告设计

辉光盘实验报告设计 一、实验目的 观察平板晶体中的高压辉光放电现象。 二、实验仪器 辉光盘演示仪 三、实验原理 闪电盘是在两层玻璃盘中密封了涂有荧光材料的玻璃珠,玻璃珠间充有稀薄的惰性气体(如氩气等)。控制器中有一块振荡电路板,通过电源变换器,将12V低压直流电转变为高压高频电压加在电极上。 通电后,振荡电路产生高频电压电场,由于稀薄气体受到高频电场的电离作用二产生紫外辐射,玻璃珠上的荧光材料受到紫外辐射激发而发出可见光,其颜色由玻璃珠上涂敷的荧光材料决定。由于电极上电压很高,故所发生的光是一些辐射状的辉光,绚丽多彩,光芒四射,在黑暗中非常好看。 四、实验步骤 1.将闪电盘后控制器上的电位器调节到最小; 2.插上220V电源,打开开关; 3.调高电位器,观察闪电盘上图像变化,当电压超过一定域值后,盘上出现闪光; 4.用手触摸玻璃表面,观察闪光随手指移动变化; 5.缓慢调低电位器到闪光恰好消失,对闪电盘拍手或说话,观察辉光岁声音的变化。 五、注意事项 1.闪电盘为玻璃质地,注意轻拿轻放; 2.移动闪电盘时请勿在控制器上用力,避免控制器与盘面连接断裂; 3.闪电盘不可悬空吊挂。

实验报告要求: 学生在完成实验报告时,需要写出所观察到的实验现象及实验感悟。 个人对演示实验的认识: 演示实验形象直观,能够引起学生的学习兴趣,同时演示实验能激发学生对实验的思考。学生学习的特点就是好奇心强,所以作为老师应根据学生这一认知特点,在物理教学中恰当进行演示实验,激发学生学习的好奇心和兴趣。演示实验留下的印象远比单纯的讲解要深得多。比如这个辉光盘实验能使学生了解平板晶体中的高压辉光放电的原理,通电后,由于稀薄气体受到高频电场的电离作用二产生紫外辐射,玻璃珠上的荧光材料受到紫外辐射激发而发出可见光,其颜色由玻璃珠上涂敷的荧光材料决定,由于电极上电压很高,故所发生的光是一些辐射状的辉光,绚丽多彩,光芒四射,在黑暗中非常好看。

Fortran 90上级实验报告

实验一 上机日期:2012年2月23日 1.实验目的: (1)了解FORTRAN90与软件开发环境的关系. (2)掌握FORTRAN90上机实操作过程. (3)掌握FORTRAN90软件开发环境启动方法. (4)理解有关工作区,项目,文件创建方法. (6)熟悉软件开发环境图形用户界面. (7)掌握程序输入,编译,运行方法. (8)了解软件开发环境常用菜单,工具按钮,环境窗口基本功能. 2上机过程记录 (1)主要记录输入程序的原代码: Program main Real length,width,radius Real ::unitprice=0.5,totalprice,area Print*,’请输入图形长宽值:’ Read*,length,width Print*”请输入绿地半径:” Read*,radius Area=length*width-3.1415926*radius**2 Totalprice=unitprice*area Print*,’地块总价为:’totalprice’万元’ End (2)调试过程: D:\shiyan01\xm1\chengxul.f90 D:\shiyan01\xm1\chengxul.f90(6) : Error: Syntax error, found CHARACTER_CONSTANT '请输入绿地半径:' when expecting one of: , ; Print*"请输入绿地半径:" ------^ D:\shiyan01\xm1\chengxul.f90(10) : Error: Invalid character_kind_parameter. No underscore Print*,'地块总价为:'totalprice'万元' ------------------------------------^ D:\shiyan01\xm1\chengxul.f90(10) : Error: Syntax error, found IDENTIFIER 'TOTALPRICE' when expecting one of: ( * :: , ; : ) (/ [ + - . ] /) ** / > // .LT. ... --------------------^ D:\shiyan01\xm1\chengxul.f90(10) : Error: This Hollerith or character constant is too long and cannot be used in the current numeric context. ['地块总价为:'] Print*,'地块总价为:'totalprice'万元' -------^ Error executing df.exe. xm1.exe - 4 error(s), 0 warning(s) (3)调试成功的程序的原代码 Program main Real length,width,radius

程序设计基础课程设计

1 矩阵的操作(6人) 设有两个矩阵A=(a ij)m×n,B=(b ij)p×q 实现要求: ⑴编写矩阵输入函数INPUT_MAT,通过该函数完成矩阵的输入并返回保存矩阵的数组和对应矩阵的行数、列数。(不能使用全局变量) ⑵编写矩阵输出函数OUTPUT_MAT,通过该函数完成矩阵的输出。 ⑶求矩阵的转置,矩阵的转置A’=(a ji)n×m,转置前输出原矩阵,转置后输出转置矩阵。 ⑷求矩阵A、B的和。矩阵A和B能够相加的条件是:m=p,n=q;矩阵A和B如果不能相加,请给出提示信息;若能够相加,则求和矩阵C并输出C。 C=A+B=(c ij)m×n,其中c ij=a ij+b ij ⑸求矩阵A、B的积。矩阵A和B能够相乘的条件是:p=n;矩阵A和B 如果不能相乘,请给出提示信息;若能够相乘,则求积矩阵D并输出D。 D=A×B=(d ij)m×q,其中d ij=∑a ik×b kj,k=1,2,……,n ⑹设计一个菜单,具有求矩阵的转置、求矩阵的和、求矩阵的积、退出等基本的功能。在求矩阵的和或求矩阵的积时要求能够先提示输入两个矩阵的,然后再进行相应的操作。

2 数据汇总 (6人) 问题描述: 在数据处理中经常需要对大量数据进行汇总,将相同关键字记录的某些数据项的值叠加起来,生成一个分类汇总表。 假设某超级市场销售有m种商品(假设商品的编号为1,2,3,┅┅,m),有n台前台收款机(假设收款机的编号为1,2,3,┅┅,n)进行收款,以记录的形式提供给计算机,每个记录表示某台收款机的一种商品一次交易的数量和销售额。记录由4个域组成:收款机编号、商品编号、销售数量、销售金额。构造一个结构体类型,每次销售数据以一个结构体变量保存在一个数据文件中。实现要求: ⑴编写实现将数据记录插入到数据文件的最后的函数; ⑵编写以收款机为单位的数据分类处理函数。构造n个单链表,每个链表保存一台收款机的销售记录,这n个单链表的头指针存放在一个指针数组中,通过数组的下标就可以知道是哪台收款机。读取数据文件的记录,将所有的销售记录(数据文件中的全部记录)分解插入到n个单链表; ⑶统计每台收款机的销售总额; ⑷编写以商品为单位的数据分类处理函数。构造m个单链表,每个链表保存一种商品的销售记录,这m个单链表的头指针存放在一个指针数组中,通过数组的下标就可以知道是哪种商品。读取数据文件的记录,将所有的销售记录(数据文件中的全部记录)分解插入到m个单链表; ⑸以商品为单位,统计每种商品的销售总额。 ⑹设计一个菜单,具有插入数据记录、按收款机统计销售总额、按商品统计销售总额、退出系统等最基本的功能。

6个单片机实验设计报告

实验一:流水灯 程序: #include sbit d0=P0^0; sbit d1=P0^1; sbit d2=P0^2; sbit d3=P0^3; sbit d4=P0^4; sbit d5=P0^5; sbit d6=P0^6; sbit d7=P0^7; void delay(unsigned int x); void main() { while(1) { d0=1; delay(250); d0=0; d1=1; delay(250); d1=0; d2=1; delay(250); d2=0; d3=0; delay(250); d3=1; d4=0; delay(250); d4=1; d5=0; delay(250); d5=1; d6=0; delay(250); d6=1; d7=0; delay(250); d7=1; } } void delay(unsigned int x) {

unsigned int y; for(;x>0;x--) for(y=500;y>0;y--); }

实验二:单个数码管显示0~9循环 #include unsigned int dulatable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; void delay(unsigned int z); void main() { unsigned int x; while(1) { for(x=0;x<10;x++) { P1=dulatable[x]; delay(250); } } } void delay(unsigned int z) { unsigned int y; for(;z>0;z--) for(y=1000;y>0;y--); }

C语言程序设计基础实验报告6【VIP专享】

实验6 数组 一、实验目的 1、掌握一维数组和二维数组的定义、赋值和输入输出的方法; 2、掌握字符数组和字符串函数的使用; 3、掌握与数组有关的算法(特别是排序算法)。 二、实验内容和步骤 编程序并上机调试运行。 1、以下给定程序MODI1.C的功能是: 求一维数组a中所有元素的平均值, 结果保留两位小数。例如,当一维数组a中的元素为:10, 4, 2, 7, 3, 12, 5, 34, 5, 9时,程序的输出应为:The aver is: 9.10 程序中有两处错误,错误都在提示行:/***********found***********/的下面一行。请改正程序中的错误, 使它能得出正确的结果。 注意:程序中的其它地方请不要随意改动,不得增行或删行,也不得更改程序的结构! #include #include void main() { int a[10]={10,4,2,7,3,12,5,34,5,9}, i; /************found************/ /************found************/ s = a[0]; for ( i=1; i<10; i++) s += a[i]; aver = s / i; printf("The aver is: %.2f\n", aver); } 2、以下给定程序MODI1.C的功能是:求二维数组a中的最小值。 例如,当二维数组a中的元素为: 4 2 34 7 3 12 5 6 5 程序的输出应为:The min is: 2 。 程序中有两处错误,错误都在提示行:/***********found***********/的下面一行。请改正程序中的错误, 使它能得出正确的结果。 注意:程序中的其它地方请不要随意改动,不得增行或删行,也不得更改程序的结构! #include #include void main() { int a[3][3]={4,2,34,7,3,12,5,6,5}, i, j, min; clrscr();

专家系统实验报告

“专家系统”实验报告 专业:智能科学与技术 班级:1102 学号:0909113310 姓名:宋佳欣 2014年6月5日

实验1 专家系统与CLIPS 实验内容提要: 专家系统不仅是具有特定的结构,同时,它还有多种知识表示形式,及其相应的知识推理方法。因此,直接采用程序设计语言实现专家系统是比较困难的,而采用适当的专家系统开发工具则可以大大降低系统开发的难度。因此,本章结合麦粒肿系统专断专家系统开发的需要,首先安排了对专家系统及其开发工具CLIPS基本理论知识,以及CLIPS基本理论知识,以及CLIPS基本使用方法的概要介绍,目的是为第6章“麦粒肿诊断专家系统开发”做好准备。 实验重点: 专家系统的一般结构 产生式规则的表示及其正向推理 专家系统开发工具的结构和特点 专家系统开发工具CLIPS的基本语法 专家系统开发工具CLIPS的基本使用 实验目的 掌握专家系统的一般结构 掌握产生式规则的表示及其正向推理 掌握专家系统开发工具的结构和特点 了解专家系统开发工具CLIPS的设计目标与特点 掌握专家系统开发工具CLIPS的基本语法 掌握专家系统开发工具CLIPS的基本使用 实验内容及要求 学习专家系统的一般结构 学习产生式规则的表示及其正向推理 学习专家系统开发工具的结构和特点 学习专家系统开发工具CLIPS的设计目标与特点 学习专家系统开发工具CLIPS的基本语法 学习专家系统开发工具CLIPS的基本使用 实验步骤 本实验包括以下六个具体步骤,分别是:学习专家系统的一般结构、学习产

生式规则的表示及其正向推理、学习专家系统开发工具的结构和特点、学习专家系统开发工具CLIPS的设计目标与特点、学习专家系统开发工具CLIPS的基本语法,以及学习专家系统开发工具CLIPS的基本使用。 1 学习专家系统的一般结构: 专家系统(ES,Expert System)是利用大量专家知识,运用只是推理方法解决特定领域中实际问题的计算机程序系统。专家系统由产生式规则专家系统发展而来,主要包括知识库、推理机、综合数据库、知识获取程序、人机接口,以及解释程序六大部分。其中,知识库、推理机、综合数据库,以及人际接口是目前大多数专家系统的主要内容,而知识获取程序和解释则是所有专家系统都期望具有的两个模块。在专家系统的一般结构中,知识库用于存放各领域专家提供的经验性知识:综合数据库用于存放关于问题求解的初始数据、中间结果、假设、目标,以及最终求解结果(事实);推理机在一定的控制策略下针对综合数据库中的当前信息,识别和选取知识库中对当前问题求解有用的知识进行推理;知识获取程序完成把专家只是按一定表示形式输入到知识库中,部分代替知识工程师进行知识的自动获取,实现专家系统的字学习,不断完善知识库;解释程序可以根据用户提问,对系统给出的结论、求解过程,以及系统当前求解状态提供说明,便于用户理解系统的问题求解,增加用户对系统求解结果的信任程度,在知识库的完善过程中,便于专家或知识工程师发现和定位知识库中的错误,便于各领域的专业人员或初学者能够从问题的求解过程中得到直观学习;人机接口将专家爱或用户的输入信息翻译为系统可接受的内部形式,同时,也把系统向专家或用户输出的信息转化成人类易于理解的外部形式。 2 学习产生式规则的表示及其正向推理 目前,用于专家系统的知识表示形式主要有谓词逻辑、产生式规则、语义网络、框架,以及剧本。其中,采用产生式规则知识表示形式建立的专家系统最为流行和广泛,这主要因为:首先,产生式规则知识表示容易被人理解;其次,它基于演译推理,保证了推理结果,的准确性;最后,大量产生式规则可以连接成多棵推理树,树的宽度反映了实际问题的范围,树的深度反映了问题的难度。 产生式规则一般表示为:如果A成立,则B成立,简记为A->B,其中A是前提,B是结论。一般来说,不同的产生式规则之间都是有联系的,即谋条产生式规则的前提实力外一条产生式规则的结论。如果把规则库(知识库)中所包含的总目标(某些规则的结论)作为根节点,按规则的前提和结论展开形成树的形式,则形成的树就被称为推理树或知识树,它把规则库中的所有规则都连接了起来。 产生式规则的推理分为正向推理和逆向推理两种,这里主要介绍正向推理。

《测量程序设计课程设计》指导书-2015

测量数据处理程序设计指导书 设计名称:测量数据处理程序设计 计划周数:2周 适用对象:测绘工程专业本科 先修课程:测量学,测量平差基础,大地控制测量,测量程序设计 一、设计目的 测量数据处理程序设计是学生在系统学习完大地控制测量学、测量平差基础、测量程序设计等相关课程之后,为了系统理解控制网平差的整体过程及综合运用科学工具而安排的。通过课程设计主要达到以下几个目的:掌握控制网平差课程设计具体内容、方法和步骤;通过理论联系实际,进一步巩固已学到的专业理论知识,并加深对理论的认识;培养学生对编写代码,上机调试和编写说明书等基本技能;锻炼学生阅读各类编程参考书籍及加以编程运用的能力。 二、设计内容及日程 在VB、 VC软件或matlab科学计算软件的平台上,选择的具体课程设计题目,进行程序设计与实现,共计10个工作日,工作程序如下: 三、设计的组织: 1.设计领导 (1)指导教师:由教研室指派教师、实验员兼任。

职责:全面组织设计大纲的实施,完成分管工作及相关技术指导。 (2)设计队长:学生班长兼任。 职责:协助教师做好本班学生的人员组织工作。 (3)设计组长:每组一人。 职责:组织执行下达的设计任务,安排组内各成员的工作分工。 2.设计分组 学生实习作业组由3~4人组成(含组长一人)。 四、设计内容 在VB、VC或MATLAB 软件平台上,按选择的设计题目进行相关程序开发 1、闭合导线简易平差、附合导线简易平差支导线计算 2、闭合水准网计算、附合水准网简易平差 3、地形图编号(新、旧两种方法) 4、误差椭圆的参数的计算与绘制误差椭圆 5、水准网严密平差 6、高斯正反算计算 7、高斯投影换带计算 8、七参数大地坐标转换(WGS84-bj54坐标转换、WGS84-CGCS2000坐标转换) 9、四参数坐标转换(西安80-bj54坐标转换、CGCS2000-bj54坐标转换、CGCS2000-西安80坐 标转换(平面) 10、大地高转换为正常高的计算 11、工程投影变形超限的处理 12、遥感图像数据处理 13、曲线(曲面)拟合 14、摄影测量空间后方交会 15、****管理信息系统设计与开发 五、上交成果 1) 小组利用vb、vc或matlab编写的软件包一个及测试数据一份 2)小组关于所开发程序设计说明书一份 3) 个人课程设计的心得一份 4)小组答辩PPT一份

C++面向对象程序设计课程设计报告

. 课程设计 课程名称C++面向对象程序设计题目名称公司人员管理系统 专业班级13级计算机科学与技术一班学生林涛、甑德胜、梁增辉 吴志伟、齐、江靖 学号51302011015、51302011016、51302011001 51302011037、51302011006、51302011009指导教师郭有强 二○一四年六月二十日

目录 一、引言 (2) 二、课程设计报告 (4) 1、问题描述 (4) 2、系统总体方案 (4) 3、设计思路和主要步骤 (5) 4、各功能模块和流程图 (5) (1)各功能模块 (5) (2)流程图 (6) 三、系统测试 (9) 四、心得体会 (15) 五、参考文献 (17) 附:程序设计代码 (18)

一、引言 1985年,管理信息系统的创始人,高登?戴维斯给出的管理信息系统的定义是:“它是一个利用计算机硬件和软件,手工作业,分析、计划、控制和决策模型,以及数据库的用户一机器系统。它能提供信息,支持企业或组织的运行、管理和决策。”这个定义说明了管理信息系统的组成要素:计算机硬件、软件、数据库、模型库和用户。 随着我国社会的不断进步,人们对管理信息系统越来越重视,再加之管理信息系统在管理方面所产生的巨大影响,也使得人们越来越关注管理信息系统的发展趋势。由于管理信息系统的发展受到以上各种变革因素的制约,传统的管理信息系统必然向现代管理信息系统发展,在这个发展过程中,管理信息系统的发展将会呈现出以下趋势: 管理信息系统将会越来越注重以人为本。管理科学的发展有科学管理理论、行为管理理论和现代管理理论三个发展阶段,正在向着越来越人性化的方向发展,即以人为本。基于管理学的这一研究视角,管理信息系统也将向着更加人性化的方向发展。在今后的管理信息系统中将会越来越注重人的因素,以人为出发点和中心,围绕着激发和调动人的主动性、积极性、创造性展开的,以实现人与社会共同发展的一系列管理活动。而且这种人性化还会贯穿于管理信息系统的开发设计与研究中,具体表现为今后的管理信息系统将具有更加友好的人机界面,易于人们操作,也会考虑到不同用户的不同需求,更加个性化。 管理信息系统向智能化方向发展。随着人工智能技术的发展,数据仓库、数据挖掘技术在管理信息系统中的应用,管理信息系统必将向着智能化方向发展,如产生了很多的决策支持系统、专家系统等等。智能化的管理信息系统具有思维模拟活动,它具有很高的自学习、自组织和进化性,并具有知识创新功能,可以解决非结构化事务,在决策中处于主导地位,是人的向导,在体系上将是大规模分布式计算模式,以基于网络神经元构件的智能网为主。 管理信息系统向集成化方向发展。随着当前系统集成技术的提高,集成技术和方法也逐步地运用到管理信息系统中。由于管理信息系统将包含多个子系统,因此将这些功能集合在一起以便更好地发挥它的作用,这就是集成化的管理信息系统。集成化的管理信息系统将管理信息系统的各个子系统有机地结合起来,达到互通信息、共享数据资源的目的,其支撑技术是数据库和计算机网络。集成管

试验设计与数据处理试验报告

试验设计与数据处理试验报告 正交试验设计 1.为了通过正交试验寻找从某矿物中提取稀土元素的最优工艺条件,使稀土元素提取率最高,选取的水平如下:

需要考虑交互作用有A×B,A×C,B×C,如果将A,B,C分别安排在正交表L8(2)的 1,2,4列上,试验结果(提取量/ml)依次是1.01,,1,33,1,13,1.06,,1.03,0.08,,0.76,0.56. 试用方差分析法(α=0.05)分析实验结果,确定较优工艺条件 解:(1)列出正交表L8(27)和实验结果,进行方差分析。 试验号 A B A×B C A×C B×C 空号提取量(ml) 1 1 1 1 1 1 1 1 1.01 2 1 1 1 2 2 2 2 1.33 3 1 2 2 1 1 2 2 1.13 4 1 2 2 2 2 1 1 1.06 5 2 1 2 1 2 1 2 1.03 6 2 1 2 2 1 2 1 0.8 7 2 2 1 1 2 2 1 0.76 8 2 2 1 2 1 1 2 0.56 K1 4.53 4.17 3.66 3.93 3.5 3.66 3.63 K2 3.15 3.51 4.02 3.75 4.18 4.02 4.05 k1 2.265 2.085 1.83 1.965 1.75 1.83 1.815 k2 1.575 1.755 2.01 1.875 2.09 2.01 2.025 极差R 1.38 0.66 0.36 0.18 0.68 0.36 0.42 因素主次 A A×C B A×B B×C 优选方案 A1B1C1 SS J 0.23805 0.05445 0.0162 0.00405 0.0578 0.0162 0.02205 Q 7.7816 总和T 7.68 P=T^2/n 7.3728 SS T 0.4088 差异源SS df MS F 显著性 A 0.23805 1 0.23805 19.5925 9259 * B 0.05445 1 0.05445 4.48148 1481 A*B 0.0162 1 0.0162 1.33333 3333 C 0.00405 1 0.00405 0.33333 3333 A*C 0.0578 1 0.0578 4.75720 1646

C++程序设计实验报告5

《程序设计基础》 实验报告 学号:2016211990 姓名:王贯东 班级:16-计算机科学与技术-1班

学院:计算机与信息学院 实验五指针 1.实验目的要求 (1)掌握指针的概念,学会定义和使用指针变量。 (2)学会使用数组指针和指向数组的指针变量。 (3)学会使用字符串指针和指向字符串的指针变量。 (4)了解指向指针的指针的概念以及其使用方法。 (5)掌握指针、引用、数组做函数参数的传递机制。 (6)*学会使用指向函数的指针变量。 2.实验设备 Visual C++ 6.0 3.实验内容 (1)阅读下面程序,写出其运行结果。

<1> #include sub ( int x , int y , int *z ) { *z = y – x ; } void main( ) { int a,b,c; sub( 10 , 5 , &a ) ; sub( 7, a, &b ) ; sub( a, b, &c ) ; cout << a <<‘,’<< b <<‘,’<< c << endl ; } 解:输出-5,-12,-7 <2> #include #include void main()

{ int stre ( char[ ] ) ; char str [ 10 ] , *p = str ; gets ( p ) ; cout << stre ( p ) << endl ; } int stre ( char str[ ] ) { int num = 0 ; while( * ( str + num ) != ’\0’ ) num ++ ; return ( num ) ; } 解:题目库函数少了 。该正后,输入1234,输出4 (2)编写程序实现下列问题的求解。 (1)输入三个整数,按由小到大的顺序输出,然后将程序改为:输入三个字符串,按由小到大的顺序输出。 #include using namespace std; int turn (int *p1,int *p2)

蒙特卡罗实验报告

蒙特卡罗方法 实验一 实验报告 蒙特卡罗方法实验一实验报告 一、实验目的 1、了解蒙特卡罗方法方法的基本思想; 2、掌握蒙特卡罗方法计算面积、体积的方法; 3、掌握由已知分布的随机抽样方法。 二、实验原理

Monte Carlo 方法,又称统计模拟方法或计算机随机模拟方法,是一种基于“随机数”进行数值模拟的方法,一种采用统计抽样理论近似求解物理或数学问题的方法。 倘若待求量可以表述成某些特征量的期望值、某些事件出现的概率或两者的函数形式,那么可采用蒙特卡罗方法求解。在求解某些特征量的期望值或某些事件出现的概率时,必须构建合符实际的数学模型。例如采用蒙特卡罗方法计算某函数所围面积时,构建的数学模型是构造一已知面积的可均匀抽样区域,在该区域投点,由伯努利定理大数定理可知,进入待求区域投点的频率依概率1收敛于该事件出现的概率(面积之比)。 由已知分布的随机抽样方法指的是由已知分布的总体中抽取简单子样。抽样方法有: 直接抽样方法:离散型分布随机抽样方法、连续型分布直接抽样方法;挑选抽样方法;复合抽样方法;随机抽样一般方法:加抽样方法、减抽样方法、乘抽样方法、乘加抽样方法、乘减抽样方法、对称抽样方法、替换抽样方法、多为分布抽样方法、积分抽样方法;随机抽样其他方法:偏倚抽样方法、近似分布抽样方法、近似-修正抽样方法。 三、实验内容 1、安装所需计算工具(MA TLAB 、fortran 、C++等); 2、编写一伪随机数发生器;(如乘加同余a=1366,c=150889,M=714025、a=9301,c=49297,M=233280;乘同余a=16807,M=232 -1;或采用其它方法) 以下内容选取一个采用自编伪随机数发生器进行计算,其余采用工具软件中自带伪随机数发生器进行计算。 3、求解以下区域的面积、体积: 3.1、给定曲线y =2 – x 2 和曲线y 3 = x 2,曲线的交点为:P 1( – 1,1 )、P 2( 1,1 )。曲线围成平面有限区域,用蒙特卡罗方法计算区域面积; 3.2、计算22 22 11z x y z x y ?≥+? ?≤+--??所围体积 其中{(,,)|11,11,02}x y z x y z Ω=-≤≤-≤≤≤≤。 4、对以下已知分布进行随机抽样: 4.1、()() []2 3 321,0,12 f x x x x =+ -∈; 4.2、()() ()[]11,1,21E f x f x x E k E = ?∈+

相关主题
文本预览
相关文档 最新文档