正文

MATLAB编程入门(二)2007-06-30 14:03:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/emath/27224.html

分享到:

                 MATLAB编程入门(二)

2.While  循环

    For循环以固定次数求一组命令的值相反,While 循环以不定的次数重复执行一组语句。While循环的一般形式是:

    while 表达式1

       语句1

    end

只要表达式1里的所有元素为真,就执行whileend之间的语句1,否则,就结束循环。通常,表达式的值给出一个标量值,但数组值也同样有效。在数组情况下,当数组的所有元素为真(值不等零)时,就执行语句1,数组中有一个元素为假(值为零),就结束循环。

           3按下面的公式计算:

          

使误差小于给定的 .

   解: 把 作为误差,程序如下:

error=input('请输入误差:');

x=1;

y=0;

n=1;

while x>error

    y=y+1;

    x=x/n;

    n=n+1;

end

e=y

运行如下:

请输入误差:0.001

e =

    2.7181

3.IF-ELSE-END 结构

    很多情况下,命令的序列必须根据关系的检验有条件地执行。在编程语言里,这种逻辑由某种If-Else-End结构来提供。最简单的If-Else-End结构是:

    if 表达式1

    语句1

    end

    如果在表达式1中的所有元素为真(非零),那么就执行ifend语言之间的语句1

    假如有两个选择,If-Else-End结构是:

    if  表达式1

        语句1

     else

        语句2

     end

在这里,如果表达式1为真,则执行语句1;如果表达式是假,则执行语句2

    当有三个或更多的选择时,If-Else-End结构采用形式

     if 表达式1

        语句1

     elseif 表达式2

        语句2

     elseif 表达式3

        语句3

     elseif 表达式4

        语句4

     elseif ……

           

           

           

     else

         语句

     end

    如果表达式1为真,则执行语句1,结束循环;如果表达式1为假,则检验表达式2,如果表达式2为真,则执行语句2,结束循环;如果表达式2为假,则检验表达式3,如此下去,如果所有表达式都为假时,则执行最后的语句。即只执行第一个真值表达式相关的语句;接下来的表达式不检验,跳过其余的If-Else-End结构。而且,最后的else命令可有可无。

4.switch-case-end结构

    如果在一个程序中,必须针对某个变量不同取值情况进行相应操作,switch语句比if else语句更方便。switch语句的一般形式为:

    switch 分支条件(数值或字符串)

    case  数值(或字符串)条件1

          语句1

    case  数值(或字符串)条件2

          语句2

    case  数值(或字符串)条件3

          语句3

    case  ...

          ...

    otherwise

          语句

    end

其中分支条件可以是一个函数、变量或者表达式.如果条件1与分支条件匹配就执行语句1,退出循环;否则,检验条件2,如果条件2与分支条件匹配执行语句2,退出循环;否则,检验条件3...,当所有条件都不与分支条件匹配时就执行最后的语句。注意otherwise是可以省略的。

    4 在图形界面上放置一个弹出式菜,点击弹出式菜单可以设置曲线颜色。

    解:程序如下:

x=linspace(-6,6,50);

y=sin(x);

h=plot(x,y,'linewidth',4);

h0=uicontrol('position',[600,500,100,30],...

    'style','popupmenu',...

    'string','红色|蓝色|黄色|黑色|青色',...

    'callback',...

    ['v=get(h0,''value'');',...

        'switch v;',...

        'case 1;',...

        'set(h,''color'',''r'');',...

        'case 2;',...

        'set(h,''color'',''b'');',...

        'case 3;',...

        'set(h,''color'',''y'');',...

        'case 4;',...

        'set(h,''color'',''k'');',...

        'case 5;',...

        'set(h,''color'',''c'');',...

        'end;']);

阅读(6670) | 评论(1)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册