讲稿-程序的设计-MATLAB入门幻灯片.pptVIP

  • 0
  • 0
  • 约9.6千字
  • 约 34页
  • 2018-09-20 发布于湖北
  • 举报
eg4:计算阶乘函数 fact.m function output = fact(n) if n == 1 output = 1; return; end output = n*fact(n-1); return:通常情况下,当被调函数执行完后,MATLAB会自动地把控制转至主调函数或者指定窗口。如果在被调函数中插入return命令后,可以强制matlab结束执行该函数并把控制转出。Return命令可使正在运行的函数正常退出,返回调用它的函数继续运行,用于函数的末尾用来正常结束函数的运行。或者用于对输入的参数进行判断,如果参数不符合要求,就调用return语句终止当前程序的运行,并返回调用它的函数或环境。 对以下问题,编写M文件: (1)用起泡法对10个数由小到大排序. 即将相邻两个数比较,将小的调到前头. (2)有一个 矩阵,编程求出其最大值及其所处的位置. (3)编程求 (4)一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下. 求它在第10次落地时,共经过多少米?第10次反弹有多高? (5)有一函数 ,写一程序,输入自变量的值,输出函数值. 实验作业 返回 谢 谢! * * * * * * * * * MATLAB入门 第三部分 程序设计 一、关系运算、逻辑运算 二、程序结构与控制 三、M文件 二、程序结构与控制语句 控制语句:for…end循环、while…end循环、if-else-end、Swich语句 顺序结构(按照顺序执行命令) 循环结构 分支结构 理论上有了以上3种结构就可以构造功能强大的程序。由于matlab是C语言编成的,它的控制语句也同C语言有相似之处,但是又有不同之处 程序结构: 1、顺序结构 它是按照顺序执行命令。 input disp pause(或Ctrl+C) eg1. x=input(input x,please:); y=input(input y,please:); z=x; x=y; y=z; disp(x); disp(y); Eg2. x=1:50; y=reshape(x,10,5); z=y; n=input(请输入显示次数:); t=input(请输入间隔时间:); for i=1:n disp(x=1-50) disp(z) pause(t) end (1) for循环:允许一组命令以固定的和预定的次数重复 for x=array {commands} end 在for和end语句之间的命令串{commands}按数组(array)中的每一列执行一次. 在每一次迭代中,x被指定为数组的下一列,即在第n次循环中,x=array(:,n). 也可嵌套使用。 2.循环结构 循环是计算机解决问题的主要手段,许许多多实际问题大都包含有规律性的重复计算和对某些语句的重复执行。 eg2. 1+…+100 eg3. 1-20阶乘累加和 eg4.p30 双重循环实现希尔伯特矩阵 eg1. 对n=1,2,…,10,求xn= 的值. eg2. 1+…+100 程序:s=0; for i=1:100 s=s+i; end s 法1: s=0; p=1; for i=1:20 p=p*i; s=s+p; end s eg3. 1-20阶乘累加和 法2: s=0; for i=1:20 p=1; for k=1:i p=p*k; end s=s+p; end s 法3: s=0; for i=1:20 s=s+prod(1:i); end s Eg1. for n=1:10 x(n)=sin(n*pi/10); end x Eg4(见p30) for i=1:3 for j=1:4 a(i,j)=1/(i+j-1); end end a a = 1 1/2 1/3 1/4 1/2 1/3 1/4 1/5 1/3 1/4 1/5 1/6 while (expressi

文档评论(0)

1亿VIP精品文档

相关文档