2MATLAB简单程序设计_简单计算器程序设计
2MATLAB简单程序设计由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“简单计算器程序设计”。
MATLAB语言基础实习指导
实习二
MATLAB简单程序设计
目的:通过实习MATLAB简单程序设计,能够编写简单MATLAB程序,为编写结构较为复杂的M文件做准备。
要求:掌握MATLAB变量命名规则,算术运算符,关系运算符,逻辑运算符以及特殊运算符,掌握脚本M文件和函数M文件的编写,掌握结构化程序设计。
一、MATLAB运算符 1. 算术运算附
包括普通运算符(+、-、*、/、^)和数组运算符(.*、.、./、.^),请回顾并掌握。2. 关系运算附 大于(>)、小于(=)、小于等于(
冒号运算符(:)与句点(.)。以上内容请参考课件。
二、M文件的编写 1. 脚本M文件
只包括一些可执行命令行,是Matlab表达式的集合,不可以接受参数。
比如新建一个文件名为cal.m的M文件,一种方法是在MATLAB的command window中输入:
>>edit cal.m 这时,就会打开MATLAB的M文件编辑器——M Editor,在窗口中输入M文件的内容,然后保存就会在当前目录下生成一个文件名为cal.m的M文件。请回忆另外两种M文件的创建方式。如把以下内容输入到cal.m中,这个M文件就是一个脚本M文件。
%this is a script M file example!clc;clear x=[4 6 5;8 2 3;7 1 9];y=x’;z=inv(x);a1=x*y,a2=x.*y b1=x/y,b2=x./y,b3=x.y 注意上面‘%’号的作用,M文件的文件名命名规则与变量相同,而且文件名不能和MATLAB函数名相同。2. 函数M文件
函数M文件是另一类M文件,用户可以根据需要编写自己的M文件,它们可以像库函数一样方便地调用。函数M文件的第一行有特殊的要求,必须遵循如下的形式:
Function=()
如果用户建立起许多M函数文件,则可以最终形成独立的用户自己的工具箱(1)单一因变量的函数M文件 新建一个M文件,输入以下内容:
% This is a function M file example function myabs=absolute(a)if a>0
myabs=a;else
myabs=-a;end 然后把M文件保存为absolute.m,在MATLAB的command window中输入: >>absolute(-5)就能调用。而不能像脚本M文件那样直接运行,因为函数M文件需要有输入参数。但是,这个M文件只能对标量求绝对值,而不能对矩阵求绝对值,请编写一个M文件,使其能对矩阵的各个元素求绝对值(提示:用size函数得到输入矩阵的行数和列数,使用嵌套for循环对矩阵的每个元素进行判断)。(2)多因变量的函数M文件
由于MATLAB的运算是矩阵运算,很多情况下,调用函数后需要返回多个值。
% This is a function M file example function [summ,mean,stdev]=stat(x)[m n]=size(x);if m==1
m=n;%if x is an array end summ=sum(x);mean=sum(x)/m;stdev=sqrt(sum(x.^2)/m-mean.^2);同样,新建一个文件名为stat.m的M文件,输入以上内容,就能调用: >>[a,b,c]=stat([1,2,3;4,5,6;10,2,8])
三、MATLAB结构化程序设计 1. if-else-end结构 2. while-end结构 3. for-end结构
4. switch-case-end结构
以上几种结构的表述与实例参见课件。
实习二作业:
1. 请编写一个函数M文件,使其能对矩阵的各个元素求绝对值,要求用2种循环实现(for循环和while循环)。提示:用size函数得到输入矩阵的行数和列数,使用嵌套for循环(while循环)对矩阵的每个元素进行判断。
2. 对课件3中的switch-case-end结构用if-elseif-else-end结构改写,实现相同功能。
3. 编制一个程序,该程序将接受用户输入的任何字符串,并查找在这个字符串中某个指定字符的出现次数。提示:用findstr函数和length函数。
答题要求:
一、独立完成以上各题,一旦发现抄袭行为,该次作业记零分。
二、作业请手写,一律不收打印稿。
三、上交时间:下一次课课前。