一、实验目的 (1)掌握建立和执行M文件的方法 (2)掌握输入输出的方法 (3)掌握顺序结构程序设计方法 (4)掌握利用if以及switch语句实现多分支选择结构的方法 |
二、实验原理与实验设备 原理:计算机编程相关知识技能和MATLAB软件编译环境 设备:计算机与MATLAB软件 |
三、建立和执行M文件 编写函数文件求得10的阶乘。提示:需要用到for循环。 function y = fib(~) x = 1; for i = 1:10 x = x*i; end y = x; end |
四、输入输出方法
x = input("Please input a number.\n"); m = floor(x); n = x - m; fprintf("所输入的数的整数部分为%d\n",m) fprintf("所输入的数的小数部分为%f\n",n)
a = input('请输入第一个浮点数:'); b = input('请输入第二个浮点数:'); c = input('请输入第三个浮点数:'); d = (a+b+c)/3; e = round(10*d)/10; disp(['计算结果为:',num2str(e)]) |
五、顺序程序结构设计
a = input("a = "); b = input("b = "); c = input("c = "); d = b; b = a; a = c; c = d; fprintf("交换后a=%d\n",a) fprintf("交换后b=%d\n",b) fprintf("交换后c=%d\n",c)
X = randi([100,999],1); a = mod(X,10); b = X - mod(X,100); d = a+b; fprintf("随机产生的三位整数为%d\n",X) fprintf("十位置零后为%d\n",d |
六、多分支结构设计
m = 10+floor(rand(1)*90); n = 10+floor(rand(1)*90); option = input('请输入运算符:','s'); switch option case '+' c = m+n; case '-' c = m-n; case '*' c = m*n; case '/' c = m/n; end fprintf("所生成的第一个随机两位数为%d\n",m) fprintf("所生成的第二个随机两位数为%d\n",n) fprintf("所得到的结果为%.2f\n",c)
function a = matrix b = zeros(5,6); b(:) = 1:30; n = input('请输入需输出的行数:'); if(n>0 && n<6) a = b (n,:); else a = b(5,:); disp('ERROR!'); end |
七、实验总结 简单谈一下MATLAB在编程时的特点,优势及劣势,并且谈一个个人在编程当中最受困扰的方面。 经过了本次实验,我对MATLAB的认识进一步加深了。MATLAB是非常强大的工程计算软件,其可以用来解决各种各样的问题,对于学工科的我来说,MATLAB是必备的计算与分析软件之一。 我也总结了MATLAB主要有三大优点。第一个优点是编程效率非常高,这是一门高级语言,相比C,Python,MATLAB更为接近我们书写计算公式的思维方式,而且其编程较为简单,易学易懂。第二个是其有高校方便的矩阵和数组运算,MATLAB像其他编程语言一样规定了矩阵的算术运算符、关系运算符、逻辑运算符、条件运算符及赋值运算符它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解数字图像处理问题时显得大为简洁、高效、方便,这是其他高级语言所不能相比的。第三个优点是其集成APP非常丰富,我曾在上面使用双目相机标定这一功能。 同样地,MATLAB也有它的缺点。第一个为其循环运算效率低,因为其处理过程非常的复杂。此外,其封装性并不好,它的所有变量都在公共的工作区,难以区分及调用。 当然,在编程中,我也受到了一些困扰,比如:该如何编写最简便快捷的函数或程序脚本,且容易和先前学过的Python与C语言相混淆。 |
MATLAB顺序结构及选择结构程序设计
最新推荐文章于 2024-06-25 19:31:40 发布