公開日: 04/01/2021

While

関連する関数にWhile()があります。この関数は、条件を繰り返しテストし、条件が真であればbodyのスクリプトを評価します。構文は次のとおりです。

While( condition, body );

たとえば、次に示す2つのプログラムは、x (287)以上かつ最小の2のべき乗を見つけるWhile()ループを使っています。どちらのプログラムでも結果は512になります。

x = 287;
 

// ループ1:

y = 1;
While( y < x, y *= 2 );
Show( y );
 

// ループ2:

k = 0;
While( 2 ^ k < x, k++ );
Show( 2 ^ k );

このスクリプトは次のように機能します。

x = 287;

xを287に設定する。

// ループ1

y = 1;

yを1に設定する。

While(

While()ループを開始する。

y < x,

yがxより小さい限りループの評価を繰り返す。

y *= 2

1に2を掛け、結果をyに割り当てる。その後、yが287より大きくなるまで、ループを繰り返します。

);

ループを終了する。

Show(y);

y (512)の値を表示する。

// ループ2

k = 0;

kを0に設定する。

While(

While()ループを開始する。

2 ^ k < x,

2をkの指数でべき乗し、結果が287より小さい限り評価を繰り返す。

k++

kを1増やす。その後、ループを2^kが287より大きくなるまで繰り返します。

);

ループを終了する。

Show(2 ^ k);

2^kの値(512)を表示する。

For()ループと同様、常に真と評価されるWhileループも、終わりのない無限ループを生成します。スクリプトを停止するには、WindowsではEscキーを、macOSではcommandキーとピリオドキーを同時に押します。または、[編集]>[スクリプトの停止]を選択します。macOSでは、スクリプトの実行中のみ、[編集]>[スクリプトの停止]が使用可能になります。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).