y
在搜索路径之下,保存为li6_6.m,在命令窗口键入li6_6,得:
y =
0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794 0.6570 0.9894 0.4121 -0.5440 -1.0000
具体操作过程是:在for和end语句之间的运算式按数组中的每一列(column)执行一次。在每一次迭代中,y被指定为数组的下一列,即在第n次循环中,y=array(:, n)。
for-end循环语句不能通过在循环语句内给循环变量重新赋值来终止循环过程,应该利用break命令跳出for-end循环。for-end循环可按需要嵌套。 【例6.7】:在M程序窗口编写如下程序:
sum=0;n=input('please input a number'); for i=1:n sum=sum+i; if sum>4949 break end end sum
在搜索路径之下,保存为li6_7.m,在命令窗口键入li6_7,即可得到相应的结果。 >> li6_7
please input a number 99 %数字99是在提示下由键盘输入的,下面98,100也一样。 sum = 4950 >> li6_7
please input a number 98 sum =
4851 >> li6_7
please input a number 100 sum = 4950
以上结果说明,当求和加到99后,其和=4950,已超过4949,循环跳出。
【例6. 8】已知y?1,当n=100时,求y的值 ?i?12i?1n解答: 在M程序窗口编写如下程序: y=0;n=100; for i=1:n y=y+1/(2*i-1); end y
在搜索路径之下,保存为li6_8.m,在命令窗口键入li6_8,得:y=3.2843 【例6. 9】:求sum=(1+2+3+…..+100) 解答: 在M程序窗口编写如下程序: sum=0;n=100; for i=1:100 sum=sum+i; end sum
在搜索路径之下,保存为li6_9.m,在命令窗口键入li6_9,得sum =5050
?10?02【例6. 10】:编程输入范德蒙型的矩阵.A??0?3?0??4解答: 在M程序窗口编写如下程序: clear all;x=[1 2 3 4]; for i=1:4
112131411222324213??23? 3?33?4??
for j=1:4 A(i,j)=x(i)^(j-1); end end A
在搜索路径之下,保存为li6_10.m,在命令窗口键入li6_10,得A =
1 1 1 1 1 2 4 8 1 3 9 27 1 4 16 64 2 while-end 循环语句
while-end循环语句的一般格式是:
while end
条件表达式
运算式
while-end循环语句的功能是,仅仅知道循环产生的条件、而循环次数为不确定的循环运算。
循环条件表达式通常的形式是:
expression rop expression
这里 rop 是 ==, <, >, <=, >= 或 ~=。
可以利用break命令跳出while-end循环,while-end循环可以按需要嵌套。 【例6.11】:从键盘输入若干个数,当输入0时结束输入,求这些数的平均值和它们之和. 解答: 在M程序窗口编写如下程序: sum=0;cnt=0;
val=input(?enter a number(end in 0):?); while val~=0 sum=sum+val; cnt=cnt+1;
val=input(?enter a number(end in 0):?); end if cnt>0 sum
mean=sum/cnt
end
在搜索路径之下,保存为li6_11.m,在命令窗口键入li6_11,即可得到相应的结果。 3 if-else-end分支语句
if-else—end分支语句的格式之一是:
if 条件表达式 end
运算式;
该if-else--end分支语句的功能是,如果在条件表达式中的所有元素为非零,那么就执行if和end语言之间的语句。
【例6.12】:在M程序窗口编写如下程序:
if rand(1)>0.5 end
disp('i love you')
在搜索路径之下,保存为li6_12.m,在命令窗口键入li6_12,即可得到相应的结果。
if-else--end分支语句的格式之二(当有两种选择时)是: if 条件表达式 else end
运算式2 运算式1
该if-else--end分支语句的功能是,如果条件表达式为真,则执行第一组命令;如果条件表达式是假,则执行第二组命令。 【例6.13】:在M程序窗口编写如下程序:
if rand(1)>0.5 else end
disp('i donot love you') disp('i love you')
在搜索路径之下,保存为li6_13.m,在命令窗口键入li6_13,即可得到相应的结果。 【例6.14】:编写绝对值函数y=|x| 解:在M程序窗口编写如下程序: function y=juedui(x) if x>=0 y=x;
else y=-x; end
在搜索路径之下,保存为juedui.m,在命令窗口调用juedui(x),即可得到相应的结果。 >> juedui(-9) ans = 9 >> juedui(12) ans = 12
if-else--end分支语句的格式之三(当有多种选择时)是:
if 条件表达式1
运算式1 条件表达式2 运算式2 条件表达式3 运算式3
elseif
else
end
该if-else--end分支语句的功能是,最后的这种形式,首先检测第一个条件表达式,当条件表达式1为真,则执行运算式1,否则检测条件表达式2,以次类推。
【例6.15】:建立命令文件,用色彩与线形区分数据点的范围。 在M程序窗口编写如下程序: n=100;x=1:n;
y=randn(1,n)%产生100个服从正态分布的随机行数组 hold on for i=1:n if y(i)<-1
plot(x(i),y(i),'g*') elseif y(i)>=-1&y(i)<=1 plot(x(i),y(i),'ob')
百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库MATLAB课件 第6章、MATLAB程序语句(2)在线全文阅读。
相关推荐: