1. カメラ
  2. カーオーディオ&エレクトロニクス
  3. ホームオーディオ
  4. パーソナルオーディオ
  5. テレビ
  6. スマートホーム
  >> 電子技術オンライン >  >> スマートホーム >> スマートライフ

簡単に Qbasic ゲームを作成

Beginner's All-Purpose Symbolic Instruction Code の略である BASIC は、今でも完全な初心者向けの最もよく知られているプログラミング言語であり、QBasic は、プログラムを作成して実行できる単純なインタプリタです。 QBasic 愛好家のかなりのコミュニティがまだあり、QBasic ゲームの作成を学ぶことでプログラミングの基礎を学ぶことができ、とても楽しいものです。

QBasic 入門

システムに QBasic がない場合は、Pete の QB サイト (「参考文献」を参照) で元のバージョンをダウンロードするか、元のバージョンと互換性を持つように設計された QB64 と呼ばれるより新しいバージョンをダウンロードできます。開くと、ブルースクリーンが表示されます。次のように入力してください:

CLS PRINT 「ハロー、ワールド!」 INPUT "あなたの名前は?"; name$ PRINT "こんにちは、";名前$; 「!」終了

次に、Shift + F5 を押してプログラムを実行します。何が起きているか:

「CLS」は「クリアスクリーン」の略で、プログラムが空白の画面で開始されるようにします。そうしないと、以前のプログラムの名残りが表示されます。

「PRINT」は、文字列を画面に表示するだけです。数字を印刷するだけなら、引用符は必要ありません。

「INPUT」は、ユーザーの入力を求める方法です。行末の "name$" は変数です。ユーザーの回答が格納される場所です。好きなように呼ぶことができます。テキストを含む変数は「$」で終わり、数値のみを含む変数は「%」で終わる必要があります。

2 番目の "PRINT" 行は、ユーザーが入力した内容と共にテキストを出力します。

"END" は、予想どおり、プログラムを終了します。

QBasic 推測ゲーム

次のコードを QBasic に入力してください:

CLS チャンス% =1 RANDOMIZE TIMER number% =INT(RND * 10) + 1 PRINT 「1 から 10 までの数字を考えています。正解するチャンスは 3 回あります。」

DO WHILE chance% <4 PRINT PRINT "チャンスは #";チャンス%; 「。」 PRINT INPUT "数字を当てる";推測% IF 推測% =数値% THEN GOTO youwin ELSEIF 推測% <数値% THEN PRINT 「低すぎます。」 ELSEIF 推測 %> 数値 % THEN PRINT "高すぎます。" ELSE PRINT 「エラーが発生しました。やり直してください。」 END IF チャンス% =チャンス% + 1 LOOP

PRINT PRINT 「チャンスがなくなった!ごめんなさい!」終了

youwin:PRINT PRINT "あなたは数字を当てました!その数字は";番号%; 「!」終了

このゲームでは、プログラムが 1 から 10 までの乱数を作成し、正解するチャンスを 3 回提供します。最初の 2 つのヒントの後に手がかりが得られます。多くのプログラミング概念が含まれています。

画面をクリアした後、"chances% =1" は数値変数を作成し、それを 1 に設定します。これにより、プレイヤーが推測するすべての確率が追跡されます。

次の 2 行は、乱数を作成します。 「RANDOMIZE TIMER」は、QBasic がその数値をランダム化するために考え出すために使用する単純な方法です。次の行「number% =INT(RND * 10) + 1」は、1 から 10 までの乱数を作成し、number% 変数に格納します。複雑に見えますが、基本的には「最初の 10 個の正の整数のうちの 1 つにします」と言っているだけです。最後の「+ 1」は、数値が 0 から 9 ではなく 1 から 10 になるようにします。

「DO WHILE...」行はループを作成します。 「DO」で始まる行が表示されたら、「LOOP」という行が見つかるまで少し下にスクロールします。 Everything in between that line will continue to loop over and over again until a certain condition is met--in this case, until chances% is no longer less than four (or "<4" in programming-speak).

The program then asks for a guess with the INPUT command, stores it in guess%, and proceeds to process it with the "IF...THEN...ELSE" method. As you can see, it works logically:"IF a statement is true, THEN do this; ELSEIF another statement is true, then do this; ELSE anything else is true, then do this."

The only extra aspect is the GOTO command. In this case, if the number is correct, the program goes to the section of the document labeled "youwin".

Right before the end of the loop, there's the "chances% =chances% + 1" line. That's to assure the loop only runs three times.

If the loop runs three times and the player has never been sent to the "youwin" section, the player loses, so right after the loop is a line informing the player of the loss. Below it is the "youwin" section, declared just by writing the name of the section with a colon.

More Game Ideas

With PRINT, INPUT, IF...THEN...ELSE, and GOTO, you have everything you need to create an easy-to-make text adventure. Here's some sample code:

house:INPUT "You're standing in a house. What would you like to do"; choice$ IF choice$ ="go upstairs" THEN GOTO upstairs ELSE GOTO house

Try to make it as complex as you can based on what you know. And for more inspiration, the web offers plenty of free QBasic game downloads. Play them and examine the code behind them to learn new techniques and get ideas.