MATLAB の条件文
このチュートリアルでは、MATLAB の条件ステートメントを使用してコードを実行するための条件を定義する方法について説明します。
MATLAB の条件ステートメント
他のプログラミング言語と同様に、MATLAB は、if
、if...else
、if...else...if
、ネストされた if...else
、switch
ステートメントなどの多くの条件ステートメントも提供します。
まず、if ステートメントについて説明しましょう。コードを特定の式でのみ実行する場合は、if ステートメントを使用できます。
if ステートメント内のコードは、条件が真の場合にのみ実行されます。条件を定義するために、算術演算子と論理演算子を使用できます。
算術演算子には、より小さい、より大きい、等しい、より小さい、等しい、より大きい、等しいが含まれます。論理演算子には、and 演算子および or 演算子が含まれます。
論理演算子は、2つ以上の条件を組み合わせるために使用されます。2つ以上の条件が真である場合にのみコードを実行する場合は、and 演算子を使用できます。
1つ以上の条件が真の場合にのみコードを実行する場合は、or 演算子を使用できます。たとえば、値が 0 より大きい場合にのみ、テキスト GreaterThan
を表示するとします。
以下のコードを参照してください。
clc
clear
value1 = 5;
if(value1 > 0)
disp('GreaterThan')
end
出力:
GreaterThan
出力では、値が 0 より大きいため、テキストが表示されます。
ここで、値が 0 以下の場合に LessThan
テキストを表示したいとします。この場合、if...else
ステートメントを使用できます。
以下のコードを参照してください。
clc
clear
value1 = -5;
if(value1 > 0)
disp('GreaterThan')
else
disp('LessThan')
end
出力:
LessThan
値が 0 以下であるため、LessThan
テキストが出力に表示されます。
if...else
ステートメントの場合、条件が true の場合、if ステートメント内のコードが実行されます。false の場合、else
ステートメント内のコードが実行されます。
ここで、値が 0 より大きいか小さいかを確認した後、値が 5 に等しいかどうかも確認し、値が 5 に等しい場合は、ValueIsFive
テキストを表示するとします。この場合、ネストされた if...else
ステートメントを使用できます。
以下のコードを参照してください。
clc
clear
value1 = 5;
if(value1 > 0)
disp('GreaterThan')
if(value1 == 5)
disp('ValueIsFive')
end
else
disp('LessThan')
end
出力:
GreaterThan
ValueIsFive
出力では、入力値がゼロより大きく、5 に等しいため、2つのテキストが表示されます。if...else...if
ステートメントは、最初のステートメントが真でないかどうかのみを確認する場合に使用できます。
たとえば、値が 0 未満で、-5 に等しいかどうかを確認したいとします。以下のコードを参照してください。
clc
clear
value1 = -5;
if(value1 > 0)
disp('GreaterThan')
else if(value1 == -5)
disp('Value = -5')
else
disp('LessThan')
end
end
出力:
Value = -5
if...else...if
ステートメントのラダーの代わりに switch
ステートメントを使用することもできます。たとえば、上記のコードを switch
ステートメントに変換してみましょう。
以下のコードを参照してください。
clc
clear
value1 = -5;
switch(value1)
case 0
disp('value = 0')
case 5
disp('value = 5')
case -5
disp('value = -5')
otherwise
disp('Default Value')
end
出力:
value = -5
次に、論理演算子を使用して、if ステートメントで複数の条件を定義しましょう。以下のコードを参照してください。
clc
clear
value1 = 5;
if(value1 > 0 && value1 < 100)
disp('Value is between 0-100')
end
出力:
Value is between 0-100
コードでは、値が 0〜100 の場合にのみ、テキストが出力されます。
&&
演算子を使用するとします。if ステートメント内のコードは、すべての条件が真の場合にのみ実行されます。||
を使用するとします演算子。1つ以上の条件が真の場合、if ステートメント内のコードが実行されます。