OpenBoot 2.x コマンド・リファレンスマニュアル

if...else...then 構造

ifthenelse の各コマンドは組み合わされて単純な制御構造を作ります。

表 4-21に条件付き実行フロー制御用のコマンドを示します。

表 4-21 if...else...then コマンド

コマンド  

スタックダイアグラム 

説明 

if

( flag -- ) 

flagtrue の場合、このコマンドの後のコードを実行します。

else

( -- ) 

iffalse の場合、このコマンドの後のコードを実行します。

then

( -- ) 

if...else...then を終了します。

これらのコマンドの書式は次のとおりです。


flag	if
	(true の場合これを実行)
else
	(false の場合これを実行)
then	
 (通常どおりに実行を継続)

または


flag	if
	(true の場合これを実行)
then	
 (通常どおりに実行を継続) 

if コマンドはスタックからフラグを 1 つ「消費」します。そのフラグが true (ゼロ以外) であれば、if の後のコマンドが実行されます。true でなければ、(存在する場合) else の後のコマンドが実行されます。


ok : testit  ( n -- )  
] 5 >  if  ." good enough "  
] else  ." too small "  
] then  
] ." Done. "  ; 
ok
ok 8 testit
good enough Done. 
ok 2 testit 
too small Done. 
ok 


注 -

] プロンプトは、それが現れる間は、新しいコロン定義の作成の途中であることをユーザーに示します。このプロンプトはセミコロンを入力して定義を終了すると ok に戻ります。