필터 지우기
필터 지우기

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

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

채택된 답변

Hernia Baby
Hernia Baby 2021년 2월 24일
편집: Hernia Baby 2021년 2월 24일
「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

추가 답변 (1개)

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

카테고리

Help CenterFile Exchange에서 Simulink에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!