我是靠谱客的博主 自由蜗牛,这篇文章主要介绍MATLAB入门教程(3)判断与循环,现在分享给大家,希望可以做个参考。

第三节
(1)判断语句
在这里插入图片描述在上面的脚本文件中出现了上节讲的输入输出语句,这里的条件判断和C语言中的用法大同小异,区别就在与没有了括号,else和if间没有了空格,最后需要end结尾。并且出现了和C语言一样功能的‘n’,功能同样是换行。
这里有一个简单的题目,输入三条边值,判断是否可以构成三角形。
在这里插入图片描述
还有一个求方程根的个数的例题:
在这里插入图片描述
在这道题中值得说明的是一些基本运算的符号,比如次方,求平方根以及之前所说的%g格式输出,在MATLAB中是使用‘%’作为注释符的。
(2)循环语句
我们在C语言中有两种循环方式,一种是使用for循环,一种是while循环,在MATLAB也是如此。
在这里插入图片描述
在上面脚本中,要求我们输入一个1到100间的整数,被注释的命令表示如果是在这个范围内的就输出这个数的平方,如果不是就输出‘wrong’,
ps:在这里出现了disp函数,这个也是用于输出的语句,以后还会碰到sprintf,他们和fprintf的区别具体请看disp fprintf sprintf 的区别(示例简单明了)
在上述中出现了while循环,注意没有括号,最后也是以end结尾,通过设定一个变量作为跳出循环的判断。
这里有一个使用while循环的例题:
求两个数的最大公约数。(在这里使用辗转相除法)

复制代码
1
2
3
4
5
6
7
8
9
10
11
a=input('a= '); %输入两个数 b=input('b= '); r=mod(a,b); %求a除以b的余数 while r~=0 %只要余数不为0就一直进行辗转相除法 a=b; b=r; r=mod(a,b); end disp(b);

除了while循环外还有for循环

复制代码
1
2
3
4
5
for i = -1 : 5 disp(i); end

表示i从-1每次加一,一直加到5,共运行了7次,值得说明的是每次增加的步数是可以改变的。如果不写就默认是加一。
如下代码就是表示从1开始每次将i增加0.5,一直加到i等于5。

复制代码
1
2
3
4
5
for i = 1 : 0.5 : 5 disp(i); end

那如果我们想要让i从大到小呢,比如从5到-1。
可以运用上面所说的

复制代码
1
2
3
4
for i = 5 : -1 : -1 %5为起点,以-1为终点,每次-1 disp(i); end

做个例题,计算1+1/2+1/3+…+1/100;

复制代码
1
2
3
4
5
6
s=0; for i=1:100 s=s+(1/i);%分数相加1+1/2+...+1/100 disp(s); end

在此基础上可以尝试做一下1-1/2+1/3-…+1/99-1/100;
当然了,MATLAB是矩阵实验室,当然可以在矩阵上用循环了;

复制代码
1
2
3
4
5
6
7
8
9
v=[5 7 9 10 13 3 2 1]; s=0for i=v s=s+i; end disp(s); %disp(sum(v));

在上面代码中用for循环对该行向量元素逐个访问累加并输出结果,最后一行使用了MATLAB提供的求和函数对该行向量进行求和,结果运行后是一致的。

最后

以上就是自由蜗牛最近收集整理的关于MATLAB入门教程(3)判断与循环的全部内容,更多相关MATLAB入门教程(3)判断与循环内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部