完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
第5章 Matlab简易使用之常用编程语句
5.1 初学者重要提示 学习本章节前,务必优先学习第4章。 Matlab的编程语句类似C,只是比C更加宽松。 5.2 Matlab控制流 5.2.1 Matlab条件控制if,else,switch 下面我们通过三个简单的例子来说明这三个函数的使用。 If和else语句的使用 a = randi(100, 1);if a 《 30 disp(‘small’)elseif a 《 80 disp(‘medium’)else disp(‘large’)end 命令窗口输出结果如下: switch语句的使用 a = randi(100, 1); if a 《 30 disp(‘small’) elseif a 《 80 disp(‘medium’) else disp(‘large’) end 命令窗口输出结果如下: 在这里顺便介绍一个类似于C语言中scanf的函数input并配合上面的if else实现一个小功能: yourNumber = input(‘Enter a number: ’); if yourNumber 《 0 disp(‘Negative’) elseif yourNumber 》 0 disp(‘Positive’) else disp(‘Zero’) end 运行上面代码后,我们在命令窗口输入数字22,输出结果如下: 5.2.2 Matlab循环控制for, while, continue, break 这里我们也通过几个简单的例子来说明这几个函数的使用。 for语句的使用 for n = 3:32 r(n) = rank(magic(n)); end r 命令窗口输出结果如下: while语句的使用 a = 0; fa = -Inf; b = 3; fb = Inf; while b-a 》 eps*b x = (a+b)/2; fx = x^3-2*x-5; if sign(fx) == sign(fa) a = x; fa = fx; else b = x; fb = fx; end end x 命令窗口输出结果如下: continue语句的使用 fid = fopen(‘magic.m’,‘r’); count = 0; while ~feof(fid) line = fgetl(fid); if isempty(line) || strncmp(line,‘%’,1) || ~ischar(line) continue end count = count + 1; end fprintf(‘%d linesn’,count); fclose(fid); 命令窗口的输出结果如下: break语句的使用 a = 0; fa = -Inf; b = 3; fb = Inf; while b-a 》 eps*b x = (a+b)/2; fx = x^3-2*x-5; if fx == 0 break elseif sign(fx) == sign(fa) a = x; fa = fx; else b = x; fb = fx; end end x 命令窗口输出结果如下: 5.2.3 Matlab矢量化 对于matlab而言,要想加快算法的执行速度可以通过算法的矢量化来实现,比如要实现如下的功能。 x = .01; for k = 1:1001 y(k) = log10(x); x = x + .01; end 但是我们矢量化后,将更加方便和容易实现。 x = .01:.01:10; y = log10(x); 但是有一点大家要特别注意,不是什么程序矢量化都能加快执行速度,要视具体情况而定。 5.3 Matlab中help功能的使用 关于matlab入门方面的东西就跟大家将这么多,基本上有这些基础就够了,后面遇到什么问题在网上查找资料即可。也可以查看matlab本身的help帮助文档。 如果有不懂的函数,可以直接在命令窗口输入help 再加上函数即可,比如输入: 5.4 总结 Matlab方面的教程就跟大家讲这么多,后面需要那方面知识的时候,我们再具体的补充。学会这些基本的操作就可以入门了。永远要记住,Matlab只是个工具,我们只需把它当个工具来用,没有必要花大量的时间去研究,入门后用什么学什么即可。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1617 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1543 浏览 1 评论
977 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
683 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1595 浏览 2 评论
1863浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
645浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
516浏览 3评论
532浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
505浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 11:55 , Processed in 0.818755 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号