用matlab程式設計選擇if或者switch來實現下列函式表示

2021-04-17 21:09:06 字數 3793 閱讀 3040

1樓:匿名使用者

function z=myfun1(x,y)if y==1

z=sin(x);

elseif y==2

z=cos(x);

else

z=sin(x)*cos(x);

endfunction z=myfun2(x)if x<=a

z=0;

elseif x<=b

z=(x-a)/(b-a);

elseif x<=c

z=1;

elseif x<=d

z=(x-d)/(c-d);

else

z=0;end

編寫matlab程式:分別使用 if語句和 switch語句實現以下計算,a,b,c期中的值從鍵盤輸入。方程如下圖:

2樓:匿名使用者

^%%%%%%%%%%%%%%%%%

function fun()

a=input('a=');

b=input('b=');

c=input('c=');

x=input('x=');

if (x>=0.5&x<1.5)

y=a*x^zhi2+b*x+c;

elseif (x>=1.5&x<3.5)y=a*(sin(c))^b+x;

elseif (x>=3.5&x<5.5)y=log(abs(b+x/c));

endy

%%%%%%%%%%%

望採dao

納!回!答!

3樓:二中混過

function y = yfun(a,b,c,x)if (x>=0.5&x<1.5)

y=a*x^2+b*x+c;

elseif (x>=1.5&x<3.5)y=a*(sin(c))^b+x;

elseif (x>=3.5&x<5.5)y=log(abs(b+x/c));end

matlab分段函式用switch程式設計(不要if語句的) 50

4樓:幽蘭書生

^clear

a=input('input a');

b=input('input b');

c=input('input c');

x=0.5:0.01:5.5;

for i=1:length(x);%%用循來環求對應的x(i)取整和對源應的y(i)

t=fix(x(i)-0.5);

switch(t)       %%switch開關bai來選du

擇y(i)表示式

case 0

y(i)=a*x(i)*x(i)+b*x(i)+c;

case 1

y(i)=a*sin(b)^c+x(i);

case 2

y(i)=a*sin(b)^c+x(i);

case 3

y(i)=log(abs(b+c/x(i)));

case 4

y(i)=log(abs(b+c/x(i)));

case 5

y(i)=log(abs(b+c/x(i))); %由於zhit=5存在,這個開關要留著,我dao隨便給的。

endend

plot(x,y);

5樓:匿名使用者

^不用baiif,也用不du

到switch請參zhi閱dao下面**內容:clear

a=input('input a')

b=input('input b')

c=input('input c')

x=0.5:0.01:5.5;

i=1:length(x);

t=fix(x(i)-0.5);

t=t(:);

y=(a*x.*x+b*x+c).*(t==0)'+ ...

(a*sin(b)^c+x).*(t==1)'+ ...

(a*sin(b)^c+x).*(t==2)'+ ...

(log(abs(b+c./x))).*(t==3)'+ ...

(log(abs(b+c./x))).*(t==4)'

matlab中if和switch函式問題

6樓:minquan一人

輸出不正常的原因:matlab 中case 不同於if else, case 後面跟的應該是變數確切的值,而不是邏輯判斷。詳細可以在command window中輸入doc case檢視。

舉例:function z=untitled(x)a=1;b=2;c=3;d=4;

z=0;

switch x

case 5

z=0;

case 6

z=1;

case 7

z=2;

case 8

z=3;

endend

在command視窗中,執行

>> untitled(2)

ans =

0>> untitled(5)

ans =

0>> untitled(6)

ans =

1>> untitled(7)

ans =

2補充:

求助乙個matlab關於switch case的問題

7樓:匿名使用者

最後乙個是不是應該換成default。

matlab 中if和switch的差別是什麼?

8樓:匿名使用者

if轉移結構

if 表示式1

語句1elseif 表示式2

語句2...

else

語句nend

程式先判斷表示式1 ,若成立,執行語句1,終止(即使後面條件成立);若1不成立,對語句2判斷,...,若所有都不成立,執行語句n。當然else 語句n可省略。

switch開關結構

switch 表示式

case 常量表示式1

語句組1

case 常量表示式2

語句組2

...otherwise

語句組n+1

endmatlab中當其中乙個case為真時,switch-case不對下邊的case進行判斷,即使滿足條件。這樣不用c中的case後加break語句。

與if不同,各個case與otherwise先後順序不會影響程式結果。

9樓:匿名使用者

if是適用於比較簡單的選擇項,兩三個那種,switch適合多項的,六七個,十來個之類的

用switch語句實現下列函式 編寫程式,要求輸入x的值,輸出y的值.

10樓:微策天下**

#include

void main()}

11樓:匿名使用者

if(age>=18&&age<25)

cout<<"你的年齡適合這個項工作\n";

/*********

if(a>0&&b>0)

c=a*b;

&&是並且的意思。

12樓:匿名使用者

public int switchtest(int x)else if(x == 0)else if(x > 0 && x < 10)

switch(flag)}

matlab程式設計,matlab程式設計 0 1規劃問題 向高手求程式程式碼。

建立數學模型 設xi 1表示ai被選中,xi 0表示ai沒被選中。則數學模型是 max 1500x1 2000x2 1300x3 2300x4 2800x5 s.t.x1 x2 1 x4 x5 1 x1 x4 1 x2 x5 0 xi 0或1,i 1,2,3,4,5 2.程式設計求解 matlab程...

MATLAB程式語言,請問下圖中程式設計是什麼意思?詳細一點好嗎

matlab是數復值計算的先鋒,它制以矩陣作為基本資料單位,在應用線性代數 數理統計 自動控制 數字訊號處理 動態系統 方面已經成為首選工具,同時也是科研工作人員和大學生 研究生進行科學研究的得力工具。matlab在輸入方面也很方便,可以使用內部的editor或者其他任何字元處理器,同時它還可以與w...

matlab作業程式設計畫圖求大神解答

不一定很準確,但基本要素應該齊全了 syms x f x sin x i int f x 0 0.1 4 ax,h1,h2 plotyy x,subs f x,subs i stem,plot set h1,linewidth 2 set h2,linewidth 1.5 axes ax 1 tex...