宿題に問題があります。コードを要求しているわけではありません。私が求めるのは、割り当ての一部をどのように実装するかについてのアドバイスだけです。
割り当ては次のとおりです: N 人のプレーヤー (n はユーザーによって指定されます) と文字 (A ~ Z、文字の数が指定されていない、または問題に記載されているとおり: 無制限) の「ボックス」。各文字にはインデックスがあります。A=0、B=1、..、Z=25。各プレイヤーはランダムな文字を受け取ります。サイズ p >= 3 ( p はユーザーが指定) の単語を次のプロパティで形成する最初のプレーヤー: 文字のインデックスは等差数列にある必要があります。たとえば、p=3 の場合、ABC または ZXV が勝利の組み合わせです。
プログラムは、反復ごとにすべてのプレーヤーの文字を表示する必要があります。1 人のプレイヤーが勝った場合、プログラムは勝ったプレイヤーと勝った単語を表示する必要があります。
提案は次のとおりです。文字列を操作するために Math.random() と StringBuilder を使用します。
私がこのプログラムのエントリ ポイントを理解した方法は、ユーザーにプレイヤーの数を尋ねることです。その後、N 個のオブジェクトを生成する必要があります (クラス Player を指定)。最初のばかげた質問: N 個のオブジェクトを生成するにはどうすればよいですか。何かのようなもの:
for (int i = 0 ; i < n ; i++) {
Player player1 = new Player();
//how do I allocate the other objects?
}
文字にインデックスを割り当てる方法はありますか? 私が考えることができるのは、次のようなランダムな文字を生成することだけです:
Random r = new Random();
box = new char[9999];
for (int i = 0; i < 9999; i++){
box[i]= (char)(r.nextInt(25)+65); //there are 26 letters and A starts on position 65
}
他のアイデアはありますか?この問題の解決策について考える方法についてアドバイスをいただければ幸いです。