======================== フィボナッチ数列の例 ======================== 解説 ########### この例では、値が100なるフィボナッチ数列を計算します。 例 ######## :: FIBONACCI ; compute the Fibonacci series SET (A,B)=1 FOR I=1:1 SET S=A+B WRITE !,S SET A=B SET B=S QUIT:S>100 WRITE !,"Result= ",S 最初の行はコメントに続き FIBONACCI ラベルがあります。セミコロンはコメントの開始のマークシンボルです。 2行目は、変数AとBに値 1をセットします。括弧を使用して、両方の変数に、初期化として同じ値を割り当てることを示しています。 3行目は、カウンタとして変数 "I" を使用するループ用です。1で変数を初期化し、同様に1でそれをインクリメントするために選択します。forループの本体はその一行です。フィボナッチ数列の計算で期待されるように、変数 S にAとBの和を計算することによって開始します。次に、次の計算をするための準備として、シリーズで変数AとBをスライドします。 forループ行の終わりでQUITコマンドは、フィボナッチのタームが100を超えているかどうかをチェックし、もしそうであればforループの実行を終了します。 4行目は、フィボナッチ タームの最後の値を出力します。 垂直フォーム ################# ただ、他の多くの言語のように、M言語コードを記述するには複数のスタイルがあります。次のように、M言語の "垂直" スタイルを使用して、上記の例を書き直すことができます。 :: FIBONACCI ; compute the Fibonacci series SET A=1 SET B=1 FOR I=1:1 DO QUIT:S>100 . SET S=A+B . WRITE !,S . SET A=B . SET B=S WRITE !,"Result= ",S 垂直の表記は、特に他の言語に慣れている開発者にとって、読みやすくなり、変更が行ごとの比較に基づいてトラックされる場合では、リビジョン管理システムでそれを維持するためにも便利です。