入力信号に0と1と無​限大(inf)の3つ​の状態を持たせ条件判​定に使いたいが。。。

1 visualizzazione (ultimi 30 giorni)
Katotyan_pe
Katotyan_pe il 23 Feb 2021
Modificato: Hernia Baby il 24 Feb 2021
0の場合1の場合未入力(inf)の3つの条件で遷移先を決定させたいのですが、やり方が分からず行き詰まっております。
そもそも、無限大を条件に使う事は出来ないのでしょうか?
また、可能であれば解決策をご教示頂きたいです。

Risposta accettata

Hernia Baby
Hernia Baby il 24 Feb 2021
Modificato: Hernia Baby il 24 Feb 2021
「0 or 1 or inf」で判定させたいときは logical と isinf関数 を使います。
判定だけなら、これが使いやすい気がします。
【例】logical値で抜き出す場合(何行目にそれがあるか)
idx = [0 0 1 inf 1 0 1 inf];
idx_0 = idx == 0; % 0の行を返す
idx_1 = idx == 1; % 1の行を返す
idx_inf = isinf(idx); % infの行を返す
入力信号が3種で命令を与えるなら、0か1かそれ以外で指示出すのもありかなと思います。
【例】vの要素が0,1,infとして繰り返し判定をさせます
i = 1;
while i <= length(v)
if v(i) == 0
% statements1
elseif v(i) == 1
% statements2
else
% statements3
end
i = i + 1;
end

Più risposte (1)

Megumi Fukuda
Megumi Fukuda il 24 Feb 2021
こんにちは。
無限大(inf)かどうかを判定したい場合、
isinf
があります。こちらを使うのはいかがでしょうか?

Categorie

Scopri di più su Simulink in Help Center e File Exchange

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!