- ベストアンサー
MATLABにて場合分け関数を定義したい
MATLABの超初心者です. 関数f(x)を定義域により,違う関数で定義したいと考えています. つまり, f(x)= f1(x) if x<=5 = f2(x) if x>5 という感じです.なにぶん初心者のため,何を調べればよいのやら途方に暮れています.アドバイスお願いします
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
いろんなレベルがあるけど x に配列を要求しないなら, function [y] = foo1(x) if (x<=5) y = cos(x); else y = sin(x); end みたいで良いし, x に配列が入る場合は, function [y] = foo2(x) I = find(x<=5); J = find(x>5); y = zeros(size(x)); y(I) = x(I).^2 - 2; y(J) = -2*x(J).^2 + x(J) + 20; の様な関数でどないでしょう.
お礼
ありがとうございました.早速,取り掛かろうと思います.