COMP 206マギルミニ

マギルミニ割り当て#7 COMP 206 7のコンピュータサイエンスのVybihal学校ページ1

CGIと基本的なWebのインタフェース
期限:2019年12月3日myCoursesの夜11時55分の
ラボJは、このミニ割り当てのためのいくつかの背景のヘルプを提供します。
週10は、スライド28〜44は、CGI開発のお手伝いをします。
TWO OF YOU CAN作品でAチームは、あなたがこの割り当てのために、必要な場合。どちらのチーム
メイトは、同じファイルに渡します。
QUESTION:ウェブゲーム
私たちは、単純なマルチユーザのWebダンジョンのクローラーのようなゲームを構築します。
あなたやあなたのチームはあなたのクラスメートと協力し、それを構築する必要があります。
あなただけのHTML、CGIおよびC.ノーCSSを使用することができます。ノーJSなど
ゲームの目標は100枚の金貨を取得することになります。
あなたは10枚の金貨でゲームを開始します。
各ダンジョンの部屋あなたは10枚の金貨の勝利または5つの金貨の損失に結果を入力してください。
あなたは、Q / A活動に従事することによって得るか失う金なります。各部屋には、どちらかになります
単一COMP206質問や、単一のゼルダの質問を。プレイヤーが正常に応答した場合
、彼らは10金貨を取得します。彼らは間違って答えると、彼らは5枚の金貨を失います。あなたはときに
支払うことができない、あなたは死にます。あなたは100枚の金貨を取得すると、あなたは勝ちます。
あなたはどの部屋から開始することができますので、これは、機会均等のダンジョンです。単純に入力し
、ゲームを開始するために、誰の部屋のURLを。あなたの部屋はきれいである必要はありません。それだけで
機能する必要があります。あなたはかなりそれを作りたい場合は、先に行くが、それに固執してください
HTML、CGI、これとC.楽しん。
各部屋には疑問を示し、(1)、(2)絵に責任がある、(3)処理することができ
質問に対するユーザの応答、(4)賞10金または(5)は5金を外し、どのように(6)ディスプレイ
、ユーザは、(7)DIEと(8)WINメッセージを表示している多くの金。
各部屋には、テキストボックスに入力フィールドと送信ボタンがあります。そのテキストボックスでユーザーが
いずれかの5つの10金片を勝つか負けるために部屋によってもたらされる質問に答えることができる
部分を、または彼らは、入力コマンドをすることができます。有効なコマンドは次のとおりです。NORTH、SOUTH、EAST、
WEST、またはGOLD。方向のそれぞれは、別の同級生の部屋に接続されています。これは、
あなたの部屋は、4つの他の部屋に接続しなければならないことを意味します。私たちはこの権利を行う場合は、プレイヤーがします
、すべての250から500畳の部屋に移動することができます。あなただけ確認して自分の部屋のことをする必要があり
、他の4つの部屋に接続します。
ユーザーは100金を持っていたら、彼らが勝ちます。ユーザープレスが0金で送信すると失う
のメッセージが自動的に表示されます。ユーザーは、いくつかの金、でも1つのピースを持っている場合、
ゲームは試みを検証します。人はそれが正しいなった場合、それらは、10枚の以上の金貨を得る
それ以外の場合は、5枚の金貨を失います。彼らが支払うに十分な金貨を持っていない場合
の損失、それらは自動的に死にます。
マギルミニの割り当て#7 COMP 206
7のコンピュータサイエンス2ページのVybihal学校
:これはあなたが何をする必要があるかである
public_htmlディレクトリ- STEP 0
public_htmlディレクトリを作成する方法をラボJショーあなたが。これを実行してください。
index.htmlを、answers.c、addgold.cと絵:あなたは、4つのファイルを作成する必要があります。
index.htmlファイルは、あなたのダンジョンの部屋になります。ファイルの残りの部分は説明されている
以下。
STEP 1 - HTMLを使用して部屋を構築し、CGI
あなたのダンジョンの部屋は次のようになります。
あなたは、タグ<センター> </センター>と部屋の自分の名前を中央にすることができます。
ゲームをより楽しくするために、あなたのページに少なくとも一つの画像を追加する必要があります。使用する
コマンドを:
<IMG SRC = "smiley.gif" ALT = "スマイリーフェイス"高さ= "42"幅= "42">
マギルミニ割り当て#7 COMP 206
7のコンピュータサイエンスのページ3のVybihal学校
<IMG>タグが表示さ.GIFや.jpgまたはあなたのpublic_htmlに保存されているの.pngファイル
のディレクトリ。

その後、質問をお書きください。あなたが使用することをお勧めします可能なタグには、次のとおりです。<b>太字</ b>、
<U>下線</ U>。
その後、命令を書く:「NORTH、SOUTH、EAST、WEST、GOLDを入力し、してください
。または質問に答える」
部屋を持つすべての最初の相互作用は、テキストボックスを通じて可能と提出する
ボタンを。プレイヤーは、5つのコマンドNORTH、SOUTH、のいずれかを入力する必要があります
EAST、WEST、またはGOLDを、またはテキストボックスに質問に対する答えを提供し、
その後、送信ボタンを押してください。送信ボタンを押すと、プログラムを呼び出します
(GCC -o回答answer.cからの)答えをプレイヤーの要求を処理します。
コマンドNORTH、SOUTH、EAST、WESTとは、移動コマンドです。
これらのコマンドは、部屋を出て、別の部屋に入るためにプレーヤーを引き起こします。君は
自分の部屋のURLを取得するために私たちのクラスの4つの他のチームに話をする必要があります。
コマンドGOLDは、プレーヤーが現在の金ピースの数が表示されます
保有します。
テキストボックスにプレーヤーの意志入力そのコマンドと[送信]を押し
ボタンを。送信ボタンは、プログラムの答えを呼び出します。これはされる
クラスでカバーされて、<form>タグを使用して実装します。あなたはどちらかを使用する
Cプログラムとの通信にPOSTまたはGETメソッドを。
あなたのウェブページには、基本的な見ることができますし、満点を受け取ることになります。
あなたがそれを楽しく見て作るために時間を取りたい場合は、そうしてください。
STEP 2 -ボタンを./answerと呼ばれるCプログラムの呼び出しを提出
answer.cと呼ばれるCプログラムを作成し、実行可能な答えにそれをコンパイルします
GCC -o回答answer.cを使用。このプログラムは、2つの可能な受信
Webページから文字列を。最初の文字列は、5つのコマンドの一つである
「NORTH」、「SOUTH」、「EAST」、「WEST」、またはすべて大文字で「GOLD」。第二
の文字列は、質問への答えです。あなたは、シェルからこの文字列を抽出します
フォームは(講義参照POSTを使用した場合、フォームはGETを使用したり、STDINからの場合は、メモリ
ノートを)。これは、最初のコマンドをチェックするのが最も簡単です。文字列がコマンドでない場合、
それは質問しようとした答えなければなりません。
プレーヤーの入力単語NORTH、SOUTH、EAST、WEST、または場合は、プログラムがされます
、プログラム別の部屋へのハイパーリンクそのWebページを生成します。レビュー
講義ノートからどのようにprintf関数に()ブラウザへ。あなたは何をする必要があります。
このような何か:
のprintf(「HERE <a href=\"http://URL\">押して、北</a>を行きます」);
上記のprintf()は、ブラウザ上のハイパーリンクが表示されます。プレイヤーは単純になります

代做COMP 206作业、代写C / C ++程序语言作业
ブラウザ引き起こすために自分のマウスを使って北に行くHERE単語押しをクリックしてください
マギルミニ割り当て#7 COMP 206
7のコンピュータサイエンスのページ4のVybihal学校を
別のウェブページに変更します。別のWebページへのリンクにHTMLタグは次のとおりです。
</a>をクリックしてください<a href="URL"> TEXT。あなたはそれぞれのためにこれを行う必要があります
方向:北、南、東、西。
プレーヤーの入力ワードGOLD場合、プログラムはプログラムで生成され
、プレイヤーが現在所有している金貨の量とAを表示するWebページを
現在の部屋にプレーヤーのバックを返すために、ハイパーリンク。
金貨の数が0または100の場合、プログラムは、プログラムしなければならない
Webページを表示は「YOU WIN」ことを生成したりすることなく、「YOU LOSEは、」
別のWebページへのハイパーリンク。ゲームオーバーになりました。このメッセージは、基本的なことができます
見て、またはあなたはそれが楽しく見て作ることができます。
STEP 3 - URLとゴールドピース
処理金貨はこの割り当ての最も難しい部分です。おそらく
最後にこれを残すために、良いアイデア。金貨ずに作業手順1と2を取得します。
その作品たら、その後、金の部分を追加します。
私たちは、金貨を処理するために特殊なHTMLタグが必要です。用途:
の<input type =」隠された」名前=」金」値=」10” >
「隠された」入力タイプには見えないの入力フィールドです。ユーザーがそれを見ることができません。
ユーザーがそれと対話することはできません。しかし、あなたは、プログラムでそれを操作することができます。
あなたのindex.htmlページには先頭に隠されたフィールドを持つべきではありません。しないでください
、あなたのindex.htmlファイルに書き込みます。ユーザーが初めてゲームに入ると、
彼らはゲームを開始するために彼らのブラウザに部屋のURLを入力することでこれを行います。
あなたのゲームは、ユーザーが開始されて行方不明に隠れフィールド手段と仮定します
ゲームを、プレイヤーを想定しますが、唯一の10金貨を持っています。だから、あなたのindex.html
ファイルが隠されたフィールドを含めることはできません。これは、通過後に追加されます
answer.cプログラム。
ユーザーが送信ボタンを押すとCGIペイロードは何かを見ていきます
このように:
のhttp:// URL /答えコマンド= NORTH?

のhttp:// URL /答えコマンド= NORTH&ゴールド= 50
ペイロードフォーマットは、隠されたフィールドの存在に依存します。最初に
、我々は金の引数が表示されていないので、ケースに隠れフィールドは、存在しませんでした。
第二ケース隠しフィールドが存在しました。
あなたのプログラムの試行は、ペイロードからの金の引数を抽出し、ときに
それを見つけることはありません、プログラムは10枚の金貨を仮定します。
あなたが現在にNORTH、SOUTH、EAST、WEST、または背面をハイパーリンクすると
ページには、プログラム的に正しいと隠されたフィールドを挿入する必要があります
先のページへの金の量。残念ながら、あなたはに許可されていない
マギルミニ割り当て#7 COMP 206
7のコンピュータサイエンスページ5のVybihal学校
編集誰か他の人のWebページには、chmodの読み取り/のみ実行されているため。
これを回避する方法は、サービスプログラムを提供するために、部屋の所有者のためです。
私たちは、このサービスプログラムのgcc -o addgold addgold.c呼ぶことにしましょう。代わりに
次のindex.htmlのページにプレーヤーを向けるSTEP 2からのハイパーリンク
の部屋、ハイパーリンクは、次のaddgoldプログラムに選手に指示します
部屋。addgoldプログラムは、Webページを表示し、隠されたフィールドを挿入します
Webページへ。
:addgoldプログラムへのURLは次のように動作します
。1.私のゲームのWebページがhttp://www.cs.mcgill.ca/~usernameであると仮定し
、プレイヤーがゲームを開始するには、ブラウザでそのURLを入力します。
プレイヤーは(彼らが入力したいとき送信ボタンを押す2.
コマンドや質問に答える)フォームは、以下のURLを(私たちは聞かせ呼び出す
:プレイヤーは北行きたかったと仮定)
のhttp://www.cs.mcgillを。 CA /〜ユーザー名/ CGI-binに/答えコマンド= NORTH?
ゴールド= 50
(注:すべての実行可能プログラムは、サブディレクトリのcgi-binにあることが必要)
3.解答プログラムは、プログラムとWebページが表示されます
、これを使用して北部のWebページへのハイパーリンクをURL:
http://www.cs.mcgill.ca/~otherpage/cgi-bin/addgold?gold=50
4で部屋の所有者のindex.htmlページが表示されますaddgoldプログラム
隠されたフィールド。私たちは、ステップ2で、今であり、私たちは自分のページ、上の入力コマンドをすることができ
WINまたは死ぬまでなどのステップ3に私たちをリードしています。
addgoldプログラムは次のようにその魔法を行います
-それは(「index.htmlを」、」RT」)とfgetsのをはfopenます()の各ラインとのprintf()の各ライン
のプレーヤーのブラウザにファイル。
-印刷は、<form>タグに来るとき、それは余分のprintf()を挿入
金を追加します。以下のように:
のprintf(「の<input type = \」隠された\」名= \」金\」
値= \」%D \」」、goldpieces)。
次の点に注意してください
二重引用符アウトO \」プリントを。これはC.に不幸が、必要である
、私はgoldpiecesを想定していますoを整数であり、私はにそれを追加してい
%dで出力が、これを行うには他の方法は、(多分金があり
、まだ文字列でした)。
-挿入された行の後に、それは読んでまでindex.htmlファイルを書き込み続け
ファイル全体は、プレイヤーのブラウザに印刷されています。addgoldプログラムが
終了します。
-プレイヤーは現在、隠された金のタグを使用して新しいWebページを見ています。あなたはしている
今、成功したウェブサイトから他のウェブサイトに値を渡します。
それだ。
残りはまっすぐでなければなりません。
マギルミニ割り当て#7 COMP 206
7のコンピュータサイエンスのページ6のVybihal学校は
助けのための教授やTAを確認して下さい。
重要
この割り当てに対する解決策を作成するためにmimi.cs.mcgill.caを使用する必要があります。あなたはできません
お使いのMacのコマンドライン、Windowsのコマンドラインを使用し、またLinuxディストリビューションをインストールし
、あなたのラップトップ上でローカル。あなたは、sshやパテあなたのラップトップからのミミに、またはあなたが行くことができますすることができます
Trottierの3階にこの割り当てを完了するために、これらのラボのいずれかを使用します。
WHAT TO手に
すべてが期日前に私のコースに提出しなければなりません。あなたがことを覚えておいてください
後半2日にあなたの割り当てアップに渡すことができますが、それぞれ5%の違約金が発生します
一日。その後、あなたの割り当ては受け付けられません。以下で手してください:
あなたのチームの名前と学籍番号を持つ•A readme.txtファイル
•TAので<a href="toあなたgame">とgame.htmlページがすぐに行くことができ
、あなたのゲームのページ。
•Cファイル:answer.cとaddgold.c
•ない手、実行中
•はCのZipファイル。
•Cプログラムにコメントを追加することを確認します。
•コメントとして自分の名前と学生ID番号を追加します。
それはどのように採点さWILL
ザ・TAは、あなたのホームページにすぐに行くことgame.htmlからハイパーリンクをクリックします。
ポイントが授与
割り当ては20ポイントの合計価値があります。
質問O
フォロー命令- •2ポイント
•5ポイント- STEP 1
•5ポイント- STEP 2
•5ポイント- STEP 3
•3ポイント- WINと失う状態
マギルミニ割り当て#7 COMP 206
7のコンピュータサイエンスページ7のVybihal学校
RULESグレーディング
割り当てを採点するときは、次の規則は、TAが続いているが:
•プログラムは、(それがうまく実行されない場合でも)グレードを得るために実行する必要があります。それであれば
それがゼロを受け取ることになります(コンパイルされません)を実行しません。(あなたを実行するようにしてください
mimi.cs.mcgill.caからプログラムを)。
•mimi.cs.mcgill.caサーバーを使用してTAの意志グレードに。
•すべての質問は比例等級分けされています。質問の40%である場合、この手段があること
、正しい、あなたはグレードの40%を受け取ることになります。

 

プロ、とても信頼できるので。必要に応じて、追加 QQ 99515681 または マイクロチャネル: codehelpを

おすすめ

転載: www.cnblogs.com/bookpython/p/11984585.html