個人財務 エレクトロニクスプロジェクト: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サブルーチンのプログラミング方法 - ダミー

エディタの選択

IOSアプリケーション開発の既存クラスにメソッドを追加する方法 - ダミー

IOSアプリケーション開発の既存クラスにメソッドを追加する方法 - ダミー

Objective-Cでは、作成していないクラスであっても、iOSアプリケーションの既存のクラスに独自のメソッドを追加できます。クラスにメソッドを追加することは、特定の状況でのみ新しい動作が使用される場合に便利です。たとえば、特定のアプリケーション...

IOSアプリケーション開発の既存クラスにメソッドを追加する方法 - ダミー

IOSアプリケーション開発の既存クラスにメソッドを追加する方法 - ダミー

IOSアプリケーションの開発では、Objective-Cを使用すると、自分が作成していないクラスであっても、既存のクラスに独自のメソッドを追加することができます。クラスにメソッドを追加することは、特定の状況でのみ新しい動作が使用される場合に便利です。たとえば、特定のアプリケーション(たとえば、...

In App Purchase機能がiPadアプリで動作する仕組み

In App Purchase機能がiPadアプリで動作する仕組み

Apple App App Purchase機能を提供します。これにより、アプリユーザーはアプリ内から仮想アイテムを直接購入することができます。複数のレベルや環境、または仮想プロパティを持つゲームアプリケーションを開発する場合は、アプリケーションにIn App Purchase機能を追加して、レベル、環境、またはプロパティをさらに販売することを検討してください。 App Purchaseで...

エディタの選択

効果的なホームビジネスWebサイトを作成する方法 - ダミー

効果的なホームビジネスWebサイトを作成する方法 - ダミー

素晴らしいかもしれませんが、製品やサービスをさらに販売するのに役立たない場合は、時間とお金の無駄です。自宅のビジネスにとって本物の資産であるWebサイトを構築するための、実証済みの方法をいくつか試してみましょう。難しいことではありません...

マスターCSSファイルを作成する方法 - ダミー

マスターCSSファイルを作成する方法 - ダミー

多くのデザイナーがマスターHTMLコードのCSSファイルを作成し、個々のサイトのニーズに合わせて、最初からウェブサイトを構築するプロセスをスピードアップします。あなたがより多くのウェブサイトを構築するにつれて、いくつかのスタイルは標準的なデザインプラクティスの標準的な部分になります。 ...

MSN adCenterのウェブマーケティングキャンペーンのアカウントを作成する方法 - ダミー

MSN adCenterのウェブマーケティングキャンペーンのアカウントを作成する方法 - ダミー

Bing検索結果と並んでクリック単価(PPC)広告はMSN adCenterを通じて提供されます。 adCenterを使用して、Webマーケティングのニーズに合わせてアカウントとキャンペーンを作成できます。 Microsoftは、Bing Travel、adCenter Desktopなどのプログラムを追加することで、PPCサービスのインターフェース、ツール、検索品質、およびボリュームを向上させるために歩み続けています。...

エディタの選択

地中海ダイエットレシピ:フルーツサラダ - ダミー

地中海ダイエットレシピ:フルーツサラダ - ダミー

果実は地中海で豊富に生育し、地中海沿岸に沿って、アメリカ人より一般的に果実を多く食べるため、地中海の高レベルの疾病予防に貢献しています。あなたの次の食事やパーティーのために健康的なサイドディッシュのフルーツサラダを作るには、いくつかの方法があります。果物は地中海で豊富に生育し、地中海沿岸に住む人々は一般にアメリカ人よりも多くの果実を食べるため、地中海の高レベルの疾病予防に寄与します。

地中海料理ダイスレシピ:クラシックジャイロとピタ - ダミー

地中海料理ダイスレシピ:クラシックジャイロとピタ - ダミー

ジャイロとピタサンドイッチは一般的なカジュアルな食品です地中海でピザや他の地中海のサンドイッチと同じように、今日はピタサンドイッチとジャイロのさまざまなバージョンが存在します。ピタスは蒸気で作られた中央のポーチ付きの丸いパンです。