Rexx-decision-making

提供:Dev Guides
移動先:案内検索

Rexx-意思決定

意思決定構造では、プログラマがプログラムで評価またはテストする1つ以上の条件を指定する必要があります。

次の図は、ほとんどのプログラミング言語で見られる一般的な意思決定構造の一般的な形式を示しています。

意思決定

条件が true であると判断された場合に実行されるステートメントがあり、オプションで、条件が false であると判断された場合に実行される他のステートメントがあります。

Rexxで利用できるさまざまな意思決定ステートメントを見てみましょう。

Sr.No. Statement & Description
1

If statement

最初の意思決定ステートメントは、 if ステートメントです。 if ステートメントは、ブール式とそれに続く1つ以上のステートメントで構成されます。

2

If-else statement

次の意思決定ステートメントはif-elseステートメントです。 if ステートメントの後にオプションのelseステートメントを続けることができます。これは、ブール式がfalseの場合に実行されます。

ネストされたIfステートメント

他のプログラミング言語で可能なように、相互に埋め込まれた*複数のifステートメント*が必要な場合があります。 Rexxではこれも可能です。

構文

if (condition1) then
   do
      #statement1
   end
else
   if (condition2) then
      do
      #statement2
   end

流れ図

ネストされた if ステートメントのフロー図は次のとおりです-

ネストされたIfステートメント

ネストされた if ステートメントの例を見てみましょう-

/*Main program*/
i = 50
if (i < 10) then
   do
      say "i is less than 10"
   end
else
if (i < 7) then
   do
      say "i is less than 7"
   end
else
   do
      say "i is greater than 10"
   end

上記のプログラムの出力は次のようになります-

i is greater than 10

ステートメントを選択

Rexxは、selectステートメントの出力に基づいて式を実行するために使用できるselectステートメントを提供します。

構文

この声明の一般的な形式は-

select
when (condition#1) then
statement#1

when (condition#2) then
statement#2
otherwise

defaultstatement
end

この声明の一般的な作業は次のとおりです-

  • selectステートメントには、さまざまな条件を評価するための一連のwhenステートメントがあります。
  • 各* when節*には異なる条件があり、評価する必要があり、後続のステートメントが実行されます。
  • それ以外のステートメントは、以前のwhen条件が true に評価されない場合に、デフォルトステートメントを実行するために使用されます。

流れ図

*select* ステートメントのフロー図は次のとおりです

ステートメントの選択

次のプログラムは、Rexxのcaseステートメントの例です。

/*Main program*/
i = 50
select
when(i <= 5) then
say "i is less than 5"

when(i <= 10) then
say "i is less than 10"

otherwise
say "i is greater than 10"
end

上記のプログラムの出力は次のようになります-

i is greater than 10