問題タブ [minesweeper]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
488 参照

c# - 配列内の列挙型の要素を取得しています

配列内の列挙型の要素を取得する方法を理解する必要があります。基本的に、私は9x9ボタンのグリッドを持っています。これらの値を格納する2つの多次元配列があります。1つは彼らの名前を収容します(名前が43の場合)、それは5ダウン、4アクロス(0から始まるため)を意味します。名前も、配列内のそれ自体のELEMENTと同じです。

ボタンの名前はplayingFieldに保持されます。
各セルのステータスはセルに保持されます(空の場合、爆弾がある場合など)。

上記を提供したAbdElRaheimの功績。これを行う理由は、両方の配列で同じになるボタン名(要素名とまったく同じ)を取得できるようにするためです。
例:私はこれを行うことができます:

(私のひどい変換を許してください。後で修正します;))そして上記のことはあなたがクリックしたセルがその下に爆弾を持っているかどうかを見ることができるということです。

しかし、私が今しなければならないことは、本質的にこれの逆です。上記では、要素名がボタン名と同じであるため、比較したい要素名がわかります。ただし、ここで行う必要があるのは、にあるすべての要素の要素を取得して、要素名(ボタン名)を見つけることです。Bombcells

これを行う方法がわかりません、私は試しました:

しかし、それは何もしません。'cells'ですべての'bomb'を見つけて、要素名を返す必要があります。そうすれば、その要素名を使用して文字列に変換し、StringToButtonメソッドを使用してボタンへの参照を作成できます。

これは、参考のために、そしてあなたがもう少しよく理解するのを助けるために、私が現在それをしている方法ですが、これは私がそれを続けたい方法ではないことに注意してください。私はそれを私が上で尋ねた方法でやりたいです:)

ありがとう!

0 投票する
4 に答える
2322 参照

python - マインスイーパで爆弾の周りに数字を配置する: なぜ「リスト インデックスが範囲外」になるのですか?

10x10 グリッドにランダムに散らばる 'z' 量の爆弾を配置する機能があります。このような感じです (「b」は爆弾の位置を表します)。「0」の隣に爆弾の数を表す数字 (対角線を含む) を配置する必要がありますが、その方法がわかりません。

これは、数字を配置するために試した関数です。

エラーリストのインデックスが範囲外になり続けています。どうすればこれを解決できますか?

0 投票する
3 に答える
254 参照

python - グリッドの「b」の周りに1を配置するPython

私はこのようなグリッドを持っています。グリッドにランダムに「b」を 1 つ配置し、文字「b」を囲む数字の 1 を配置します。これは、1 が一番下の行と列の一番右に配置される場合を除いて、どこでも機能するようです。たとえば、次のようになります

どこに見えるべきか

ここに私が使用しているコードがありますが、なぜそれらの 1 がそこに配置されていないのかわかりません。

0 投票する
3 に答える
613 参照

python - マトリックス内の「b」の周囲の値を確認する

マインスイーパ、まだ。私はそれを行う方法を見つけましたが、これを行うには簡単な方法が必要であることを知っています. 周囲にいくつの爆弾 ("b") があるかを表すために、行列に数値を配置する必要があります。これは私が持っているものであり、もっと短い方法が必要であることを知っています。

0 投票する
2 に答える
1233 参照

python - Pythonでの再帰的なゲームの問題

PythonでMinesweeperのバージョンを作成していますが、小さな問題が発生しました。このコードでは、次のようになります。

マインスイーパ関数を再度呼び出し、ゲームを最初からやり直します。このコードはしばらくの間Trueの中にあります:ゲームコードの残りの部分と一緒にループします。唯一の問題は、ゲームを再開してから勝ち、もう一度プレイしたくないと言っても、ループが中断されないことです。これは、再帰を使用して関数を再度呼び出すという事実と関係があると思います。今のところ、機能するのはsys.exit()を使用することだけですが、それが理にかなっている場合は、より正当なソリューションが必要です。

コード全体は次のとおりです。

0 投票する
3 に答える
363 参照

c++ - 2D 配列を渡す C++

フラット ファイルからボードをロードするマインスイーパ ゲームを作成しようとしています (いいえ、ランダムではありません)。割り当ての指示に従って、コマンドライン引数として渡されたファイルを解析するロード関数に 2 次元配列を渡します。

とにかく、私の問題は 2D 配列を渡すことです。それを行うための適切な方法は何ですか?以下は私がこれまでに持っているコードです:

0 投票する
1 に答える
132 参照

c# - アイコンとして値を設定するにはどうすればよいですか?

私は問題があります。まず、私が作成しているマインスイーパゲームからの小さなコードの抜粋を示します。

さて、これが行うことは、私のグリッド内の地雷をのように設定すること*です。

代わりlbl_grid[mineX, mineY].Textに、アイコンの値を割り当てる必要があります。これは可能ですか?

アイコンはテキストではないので、テキスト以外のものを使用する必要があると思います。

0 投票する
1 に答える
456 参照

java - JButton なしで ImageIcon (または実際にはあらゆる種類の画像) を表示するにはどうすればよいですか?

私は掃海艇ゲームに取り組んでおり、爆弾 (またはこの場合は私が作成したパンダの画像) を押したときにゲーム空間の下に表示されるようにしたいと考えています。この時点で、すべてのスペースの下に表示させたいだけです。その後、表示される場所をランダム化する方法を知っています。問題は、表示させることです。

現在、このトピックに適用される私のコードの部分は、2 つの異なるクラスにあります。

ファーストクラス

2つ目

0 投票する
2 に答える
399 参照

c++ - ベクトル配列を使用して C++ で掃海艇を作成する

基本的には、ユニ用のコンピューター ゲーム マインスイーパを作成しようとしています。配列で動作するようになりましたが、代わりにベクトルを使用する必要があることがわかりましたが、これは完全に無力です。誰かが私を助けることができれば、それは素晴らしいことです。基本的に、ベクトルを使用して、ゲームの各ラウンドがプレイされるたびに大きくなるマトリックスを作成したいと考えています。最初のラウンドは 9x9 マトリックスで始まり、次に 12x12、24x24 の 3 つのラウンドがあります。配列の 1 つは完全に X で構成され、2 番目の配列にはランダムに生成された地雷がその中に隠され、地雷に接触している任意の必要な数字も含まれます。どんな助けでも大歓迎です。私が理解するのを助けるために送信されたコードに小さなポインターがあれば、それは素晴らしいでしょう:)

ありがとう

0 投票する
3 に答える
2674 参照

java - プログラミングの課題マインスイーパのヘルプ:2D文字列配列の「*」を確認する方法は?

プログラミングチャレンジのWebサイト用にマインスイーパプログラムを作成しようとしていますが、2D配列の特定の要素がマインであるかどうかを検出し、周囲の領域をインクリメントするのに問題があります。これは、配列の隅にある地雷をチェックし、周囲の領域をインクリメントする私のコードです

入力した場合:

このコードは次のように出力します。

私の質問は、コードを取得して隣接する地雷を「スキップ」し、周囲の領域をインクリメントするにはどうすればよいですか?入力した場合

出力したい:

編集:あなた方全員は素晴らしい答えを持っていました、しかしそれが私が私が言及しなかった他の多くの問題を解決したので私は一番上の答えを選びました。よろしくお願いします!