SWITCH 関数は引数式(Arg)を取り、定義済みの値間隔 [(E1 + E2)/2; (E2 + E3)/2, ...; (En-1 + En)/2] のどの範囲に該当するかを調べます。次に、該当する定義済みの結果の値 [R1; R2, ...; Rn] を返します。つまり、(E1+E2)/2 < Arg <= (E2+E3)/2 の場合は R2 を返します。
switch (Arg, E1, R1, E2, R2, E3, R3 …, En, Rn)
グラフで表すと:
表で表すと:
以下の引数の場合 |
関数が返す値 |
Arg < = (E1+E2)/2 |
R1 |
(E1+E2)/2 < Arg < = (E2+E3)/2 |
R2 |
(E2+E3)/2 < Arg < = (E3+E4)/2 |
R3 |
.... |
... |
(En+1+En)/2 < Arg |
Rn |
SWITCH 関数は、引数の特定の値に応じて値を返す場合に適しています。結果として、上記の関数は以下のように読むことができます。
引数 |
戻り値 |
E1 |
R1 |
E2 |
R2 |
... |
... |
En |
Rn |
SWITCH 関数を使用するパラメータの値が、材料の厚みに応じて変わる値であるとします。
パラメータ SW が材料の厚み d() の値に応じて変わる場合に SWITCH 関数を使用します。このパターンに依存関係が記述されています。
材料の厚み d() |
SW |
1.5 |
3 |
3 |
6 |
4 |
6 |
4.5 |
6 |
5 |
8 |
5.5 |
8 |
7 |
10 |
9 |
12 |
12 |
15 |
SWITCH 関数を使用すると、上記の表を次のように表すことができます。
switch(d(), 1.5, 3, 3, 6, 4, 6, 5, 8, 7, 10, 9, 12, 12,15) — 重要:これは、パラメータ SW の式に入力する内容です。
この関数をグラフで表すと、このようになります。
表で表すと:
以下の場合 |
SW の値 |
d() <= 2.25 |
3 |
2.25< d() <= 2.5 |
6 |
2.5< d() <= 4.5 |
6 |
4.5< d() <= 6 |
8 |
6< d() <= 8 |
10 |
8< d() <= 10.5 |
12 |
10.5< d() |
15 |