数学实验2_MATLAB操作基础.

上传人:最**** 文档编号:118461690 上传时间:2019-12-15 格式:PPT 页数:41 大小:775.50KB
返回 下载 相关 举报
数学实验2_MATLAB操作基础._第1页
第1页 / 共41页
数学实验2_MATLAB操作基础._第2页
第2页 / 共41页
数学实验2_MATLAB操作基础._第3页
第3页 / 共41页
数学实验2_MATLAB操作基础._第4页
第4页 / 共41页
数学实验2_MATLAB操作基础._第5页
第5页 / 共41页
点击查看更多>>
资源描述

《数学实验2_MATLAB操作基础.》由会员分享,可在线阅读,更多相关《数学实验2_MATLAB操作基础.(41页珍藏版)》请在金锄头文库上搜索。

1、数 学 实 验 华中农业大学数学建模基地系列课件 实验二目的 正确区分命令文件和函数文件的区别,掌 握函数文件的组成,函数调用等 掌握程序结构组成,循环结构,选择结构 掌握Matlab 符号运算 所谓M文件就是由MATLAB语言编写的可在 MATLAB语言环境下运行程序源代码文件。 M文件可以根据调用方式的不同分为两类: 命令文件(Script File):自动重复执行的一组 MATLAB命令和函数组合,不需输出输入参数。 函数文件(Function File):M文件的第一个可执 行以function开始,便是函数文件,每一个函数文件 定义一个函数。 2.1.1 M文件 1. M文件概述 2

2、.1 MATLAB语言的流程结构 function output,output2=function-name(input1,input2) 2. M 文件的建立与打开 M文件是一个文本文件,扩展名为“m”,可以用任何 文本编辑器来建立和编辑,通常使用 Matlab 自带的 M 文件编辑器。 (1)新建一个 M 文件 方法一 菜单操作 ( File New M-File ) 方法二 命令操作 ( edit M 文件名 ) 方法三 快捷栏按钮 (2) 打开已有的 M 文件 方法一 菜单操作 ( File Open ) 方法二 命令操作 ( edit M文件名 ) 方法三 快捷栏按钮 方法四 双击

3、M 文件 3. M 文件的运行 (1)从命令窗口 输入文件名即可运行。 (2)从编辑器窗口 方法一 在编辑器菜单Debug-save and run 方法二 快捷栏按钮 方法三 快捷键F5 注1 命令文件产生的变量是全局变量,函数文件内部的变量 (非输入参数)是局部变量。 注2 运行若出现死循环或其它需要中断程序运行: 1. 命令窗口使用组合键ctrl+c。 2. 组合键ctrl+alt+del调出任务管理器,结束matlab进程。 例2.1.1 分别建立命令文件和函数文件,将华氏温度f 转换为摄氏温度c。 命令文件建立: (以文件名f2c.m存盘) clear; %清除工作空间中的变量 f=

4、input(temperature:); c=5*(f-32)/9 f2c Input Fahrenheit temperature:73 c = 22.7778 命令窗口输入: 函数文件建立:以文件名f2c_fun.m存盘 function c=f2c_fun(f) c=5*(f-32)/9; c=f2c_fun(20) c = -6.6667 命令窗口输入: 注1:函数调用的一般格式是: 输出实参表=函数名(输入实参表) 实参传递给形参 例2.1.2 编写函数文件求半径为r的圆的面积和周长 。函数文件如下: function s,p=fcircle(r) %r 圆半径 %s 圆面 %p 圆

5、周长 s=pi*r*r; p=2*pi*r; 2.2 程序控制结构 程序控制结构有三种:顺序结构、选择结构和 循环结构。任何复杂的程序都由这三种基本结构组 成。 2.2.1 顺序结构 按排列顺序依次执行各条语句,直到程序的最后 。 这是最简单的一种程序结构,一般涉及数据的输 入输出、数据的计算或处理等。 1. 数据的输入 从键盘输入数据: A=input(提示信息,s); 加上s选项,则允许用户输入一个字符串。 xm=input(Whats your name?,s); Whats your name?张三 2. 数据的输出 disp(输出项) 其中输出项既可以为字符串,也可以为矩阵。 例2.

6、2.1 输入x,y的值,并将它们的值互换后输 出。 x=input(Input x please:); y=input(Input y please:); z=x;x=y;y=z; disp(x);disp(y); Input x please:1 Input y please:2 2 1 例2.2.2 求一元二次方程ax2 +bx+c=0的根。 a=input(a=?); b=input(b=?); c=input(c=?); d=b*b-4*a*c; x=(-b+sqrt(d)/(2*a),(-b-sqrt(d)/(2*a); disp(x1=,num2str(x(1),x2=, num2

7、str(x(2); a=?1 b=?3 c=?2 x1=-1,x2=-2 3. 程序的暂停 pause(延迟秒数) 如果省略延迟时间,直接使用 pause,则将暂停 程序,直到用户按任一键后程序继续执行。 2.2.2 选择结构 选择结构是根据给定的条件成立或不成立,分 别执行不同的语句。 MATLAB 用于实现选择结构的语句有 if 语句 和 switch 语句。 1. if语句 在MATLAB中,if语句有单分支,双分支,多 分枝3种格式。 if 条件 语句组 end 当条件1成立时, 执行语句组1, 否则,当条件2成立, 执行语句组2, 否则,, 否则,当条件m成立, 执行语句组m, 否则

8、 执行语句组n, 之后继续执行 if 语句的后继语 句,若条件不成立,则直接执 行if语句的后继语句。 if 条件 语句组1 else 语句组2 end if 条件1 语句组1 elseif 条件2 语句组2 elseif 条件m 语句组m else 语句组n end 例2.2.3 计算分段函数的值。 x=input(请输入x的值:); if x c=input(请输入一个字符,s); if c=A else disp(c); end 2. switch语句 switch 表达式 %计算表达式的值 case 表达式1 %等于表达式1的值时,执行语句组1 语句组1 case 表达式2 %等于表达

9、式1的值时,执行语句组2 语句组2 case 表达式m %等于表达式m的值时,执行语句组m 语句组m otherwise %不为上述值时,执行语句组n 语句组n end %当任意一个分支的语句执行完后,直接执行switch语句的下一 句。 例2.2.5 某商场对顾客所购买的商品实行打折销售, 标准如下(商品价格用price来表示): price200 没有折扣 200price500 3%折扣 500price1000 5%折扣 1000price price=input(请输入商品价格); switch fix(price/100) case 0,1 %价格小于200 rate=0; cas

10、e 2,3,4 %价格大于等于200但小于500 rate=3/100; case num2cell(5:9) %价格大于等于500但小于1000 rate=5/100; case num2cell(10:24) %价格大于等于1000但小于2500 rate=8/100; case num2cell(25:49) %价格大于等于2500但小于5000 rate=10/100; otherwise %价格大于等于5000 rate=14/100; end price=price*(1-rate) %输出商品实际销售价格 2.2.3 循环结构 循环结构是按照给定的条件,重复执行指定的 语句。 M

11、ATLAB 用于实现循环结构的语句有 for 语 句和 while 语句。 1. for语句 for 循环变量=表达式1:表达式2:表达式3 循环体语句 end 其中表达式 1 的值为循环变量的初值,表达式2的值为 步长,表达式3的值为循环变量的终值。步长为1时,表达 式2可以省略。 for 循环变量=矩阵表达式 循环体语句 end 执行过程是依次将矩阵的各列元素赋给循环变量,然 后执行循环体语句,直至各列元素处理完毕。 例2.2.6 已知 ,当n=100时,求y的值。 y=0; n=100; for i=1:n y=y+1/(2*i-1); end y 例2.2.7 写出下列程序的执行结果。

12、 s=0; a=12,13,14;15,16,17;18,19,20;21,22,23; for k=a s=s+k; end disp(s); 2. while语句 while语句的一般格式为: while (条件) 循环体语句 end 其执行过程为:若条件成立,则执行循环体语 句,执行后再判断条件是否成立,如果不成立则跳 出循环。 例2.2.8 从键盘输入若干个数,当输入0时结束输入, 求这些数的平均值和它们之和。 sum=0; cnt=0; val=input(Enter a number (end in 0):); while (val=0) sum=sum+val; cnt=cnt+

13、1; val=input(Enter a number (end in 0):); end if (cnt 0) sum mean=sum/cnt end 3. break语句和continue语句 与循环结构相关的语句还有 break 语句和 continue语句。 它们一般与if语句配合使用。 break 语句用于终止循环的执行。当在循环 体内执行到该语句时,程序将跳出循环,继续执 行循环语句的下一语句。 continue 语句控制跳过循环体中的某些语句。 当在循环体内执行到该语句时,程序将跳过循环 体中所有剩下的语句,继续下一次循环。 例2.2.9 求100,200之间第一个能被21整除

14、 的整数。 for n=100:200 if rem(n,21)=0 continue end break end n 4. 循环的嵌套 如果一个循环结构的循环体又包括一个循环结 构,就称为循环的嵌套,或称为多重循环结构。 例2.2.10 若一个数等于它的各个真因子之和,则称 该数为完数,如6=1+2+3,所以6是完数。求 1,500 之间的全部完数。 for m=1:500 s=0; for k=1:m/2 if rem(m,k)=0 s=s+k; end end if m=s disp(m); end end MathWorks公司在1993年收购了主要针对符号计 算的MAPLIE V 软件的使用,以

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号