天天看點

matlab的if,switch和try語句的用法舉例if語句switch語句try語句 

if語句

1.計算分段函數的值

matlab的if,switch和try語句的用法舉例if語句switch語句try語句 

 (1)采用雙分支結構來實作,程式如下:

%if語句雙分支結構

x=input('請輸入x的值:');

if x==10

    y=cos(x+1)+sqrt(x.^2+1);

else 

    y=x*sqrt(x+sqrt(x));

end

y

(2)采用單分支if語句來實作,程式如下:

%if語句單分支結構

x=input('請輸入x的值:');

if x==10

    y=cos(x+1)+sqrt(x*x+1);

end

if x~=10

    y=x*sqrt(x+sqrt(x));

end

y

(3)可以不用第一個if語句,直接求函數值。程式如下:

%第一個不用if直接求函數值

x=input('請輸入x的值:');

y=cos(x+1)+sqrt(x*x+1);

if x~=10

    y=x*sqrt(x+sqrt(x));

end

y

2.輸入一個字元,若為大寫字母,則輸出其對應的小字母;若為小寫字母,則輸出其對應的大寫字母;若為數字字元則輸出其對應數的平方,若為其他字元則輸出原樣。

解析:可能會用到的函數有:

           lower函數:将大寫字母轉換成相應的小寫字母;

           upper函數:将小寫字母轉換成相應的大寫字母;

           str2double函數:将字元串轉換為數值;

代碼如下:

c=input('請輸入一個字元:','s');

if c>='A' && c<='Z'

    disp(lower(c));

elseif c>='a' && c<='z'

    disp(upper(c));

elseif c>='0' && c<='9'

    disp(str2double(c).^2);

else disp(c)

end

switch語句

1.某商場對商品進行打折銷售,标準如下(商品價格用price表示)

matlab的if,switch和try語句的用法舉例if語句switch語句try語句 

程式代碼如下:

price=input('請輸入商品價格');

switch fix(price/100) %fix()函數向零方向取整

    case{0,1}

        rate=0;

    case{2,3,4}

        rate=3/100;

    case num2cell(5:9)

        rate=5/100;

    case num2cell(10:24)

        rate=8/100;

    case num2cell(25:49)

        rate=10/100

    otherwise

        rate=14/100;

end

price=price*(1-rate)

try語句 

1.矩陣乘法運算要求兩矩陣的維數相容,否則會出錯。先求兩矩陣的乘積,若出錯,則提示錯誤資訊。

程式如下:

A=input('請輸入A矩陣');

B=input('請輸入B矩陣');

try

    C=A*B

catch

    lasterr

end

程式結果:

>> try_

請輸入A矩陣[1,2,3,4;5,6,7,8;9,10,11,12]

請輸入B矩陣[1,2,3;4,5,6;7,8,9;10,11,12]

C =

    70    80    90

   158   184   210

   246   288   330

>> try_

請輸入A矩陣[1,2,3;4,5,6] 

請輸入B矩陣[2,3,4;5,6,7] 

ans =

    '錯誤使用  * 

     用于矩陣乘法的次元不正确。請檢查并確定第一個矩陣中的列數與第二個矩陣中的行數比對。要執行按元素相乘,請使用 '.*'。'

繼續閱讀