個人財務 エレクトロニクスプロジェクト:PBASICサブルーチンのプログラミング方法 - ダミー

エレクトロニクスプロジェクト:PBASICサブルーチンのプログラミング方法 - ダミー

Anonim

サブルーチン は、プログラムの任意の場所から呼び出すことができるプログラムのセクションです。サブルーチンが終了すると、プログラムの制御は、サブルーチンが呼び出された場所にジャンプします。 サブルーチンは、プログラムのメインループからプログラムの長い部分を分けることができるため、メインプログラムのループを簡単に分かりやすくするために便利です。サブルーチンのもう1つの利点は、プログラムを小さくすることができることです。

<! - 1 - >

複雑な計算を何度も実行する必要があるプログラムを作成しているとします。複雑な計算をサブルーチンに配置すると、プログラムのいくつかの場所からサブルーチンを呼び出すことができます。そうすれば、複雑な計算を1回だけ実行するコードを書くことができます。

サブルーチンを作成して使用するには、2つのPBASICコマンドを使用する必要があります。最初はGOSUBで、サブルーチンを呼び出します。サブルーチンを呼び出すときは、通常、プログラムのメインループ内でGOSUBコマンドを使用します。 2番目のコマンドはRETURNです。これは常にサブルーチンの最後のコマンドです。

<! - 2 - >

サブルーチンを作成するには、ラベルで始まり、RETURNコマンドで終了します。その間に、サブルーチンが呼び出されたときに実行するコマンドを記述します。

1から999までの乱数を生成し、変数Rndに保存するサブルーチンの例を次に示します。

GetRandom:RANDOM Rnd Rnd = Rnd // 999 + 1 RETURN

このサブルーチンを呼び出すには次のようなGOSUBコマンドを使うだけです:

<! - 3 - >

GOSUB GetRandom
このGOSUBコマンドは、制御をGetRandomラベルに転送します。次に、GetRandomサブルーチンがRETURNコマンドに達すると、コントロールはGOSUBコマンドの直後のコマンドにジャンプします。

サブルーチンを使用して1から1000の間の乱数を取得し、乱数を使用してピン0のLEDをランダムな間隔で点滅させる完全なプログラムを次に示します。このプログラムは、ピン0のLEDを持つベーシックスタンプ回路で実行できます。

'LEDブリンカプログラム' Doug Lowe '2011年7月10日「このプログラムはピン0のLEDをランダムに点滅します。 '{$ PBASIC 2. 5} Rnd VARワードLed1 PIN 0 DO GOSUB GetRandom HIGH Led1 PAUSE Rnd LED LED1 PAUSE 100 LOOP GetRandom:RANDOM Rnd Rnd = Rnd // 999 + 1 RETURN

サブルーチンを使用する場合、あなたのプログラムがあなたのサブルーチンに誤って落ち込んで実行されることを意図していないときに実行するのを防ぎます。たとえば、リスト3-5のプログラムでは、LEDを100回だけ点滅させたいので、DOループの代わりにFOR-NEXTループを使用したとします。ここでは、そのプログラムを書く

の例はありません。 FORカウンター= 1 TO 100 GOSUB GetRandom HIGH Led1 PAUSE Rnd LED LED1 PAUSE 100 NEXT GetRandom:RANDOM Rnd Rnd = Rnd // 999 + 1 RETURN あなたはなぜそれを見ますか? FOR-NEXTループがLEDを100回点滅させた後、プログラムはサブルーチンであるFOR-NEXTループの後に次のコマンドを続けます!

これを防ぐために、別のPBASICコマンドENDを使用することができます。これはBASIC Stampにプログラムの最後に到達したことを通知するだけなので、コマンドの実行を停止する必要があります。次のように、NEXTコマンドの後にENDコマンドを配置します。

FORカウンタ= 1 TO 100 GOSUB GetRandom HIGH Led1 PAUSE Rnd LED LED1 PAUSE 100 NEXT END GetRandom:RANDOM Rnd Rnd = Rnd // 999 + 1 RETURN > FOR-NEXTループの終了後、プログラムは停止します。

エレクトロニクスプロジェクト:PBASICサブルーチンのプログラミング方法 - ダミー

エディタの選択

ASVABの準備:小数の使用

ASVABの準備:小数の使用

ASBABの小数を扱う方法を知る必要があります。小数は、分子と分母を使用せずに分数を書き込む方法です。小数点以下7分の10を10進数として書くことができます。あなたはそれを "7分の1"または "ゼロ点7"と発音します。小数点以下の桁数は小数点以下の桁数を示します。

ASVABサブテストの詳細 - ダミー

ASVABサブテストの詳細 - ダミー

テストの目的と目的によって、いくつかのバージョンのASVAB。 ASVAB(CAT-ASVAB)のコンピュータ化されたバージョンは、9つの別々の時間調整されたサブテストを含む。 CAT-ASVABでは、自動情報とショップ情報が2つの異なるテストに分かれていますが、それらはペーパーバージョンで組み合わせられています。 ...

ASVAB読書と朗読のヒント - ダミー

ASVAB読書と朗読のヒント - ダミー

あなたの能力を向上させるためのショートカットはありませんASVABの読解スキル(練習以外に)は、このパートでできるだけ高いスコアを取るために、テスト日にいくつかのことを行うことができます。あなたがこの小テストで時間を使い果たしている場合や、あなたが本物を特定できるかどうかがわからない場合...

エディタの選択

Excelマクロヘルプのための10の場所 - ダミー

Excelマクロヘルプのための10の場所 - ダミー

誰も1つのExcelマクロエキスパートになることはできません日。 VBAは時間と実践の旅です。良いニュースは、そこにあなたの道であなたを助けることができる豊富な資源があるということです。

5本当にクールなExcel関数 - ダミー

5本当にクールなExcel関数 - ダミー

この便利な関数をExcelの機能に追加すると、あなたはExcelマスターのそれ以上のものになるでしょう。簡単に乱数を生成するExcel RAND関数は0と1の間の数値を返します。それだけです。通常、返された数値を有用なものにマッサージする必要があります。 ...

Excel 2016でユーザー定義関数に説明を追加する - ダミー

Excel 2016でユーザー定義関数に説明を追加する - ダミー

ユーザーがカスタム関数の目的を理解している場合は、関数の機能の説明に役立つ[関数と関数の引数の挿入]ダイアログボックスに表示される説明を追加できます。このような種類の説明をユーザー定義関数に追加するには、Visual Basic Editorの特殊ウィンドウであるオブジェクトブラウザを使用します。

エディタの選択

Excelのテキスト文字列からスペースを削除する - ダミー

Excelのテキスト文字列からスペースを削除する - ダミー

余分なスペースを含むテキストに間違いなく遭遇します。これらの余分なスペースは、テキストの冒頭にあることがありますが、それ以外の場合は末尾に表示されることがあります。

Excelデータ分析アドインの回帰ツール - ダミー

Excelデータ分析アドインの回帰ツール - ダミー

回帰という用語は指数関数的な平滑化ほど悪くはないが、少なくとも数学的にはもっと複雑である。そのため、データ分析アドインの回帰ツールが便利です。アドインは、移動平均と指数平滑化の場合と同様に、数学の責任を負います。あなたはまだ...

Excel 2007ワークシートの名前を変更する - ダミー

Excel 2007ワークシートの名前を変更する - ダミー

Excel 2007がブックのタブ(Sheet1〜 Sheet3)はあまり説明的ではありません。幸いなことに、この記述的な名前が31文字以下であれば、ワークシート・タブの名前をワークシートに貼り付けたものを覚えやすくする名前に簡単に変更できます。