タイトルで申し訳ありませんが、何をする必要があるかを簡単に説明するのは難しいです。
私はこの事前定義された配列を持っています:
string[] SkippedAreasArray = new string[] {"A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q"};
それぞれの文字を と呼ぶことができますArea
。NumberOfAreas
0(null) から 17 までの整数値を保持する変数があります。この値の意味は次のとおりです。NumberOfAreas
= 5 の場合、 string があります"A", "B", "C", "D", "E"
。NumberOfAreas
= 3の場合、次"A", "B", "C"
のようになります。文字列は常に で始まり"A"
、アルファベット順に従います。
ユーザー入力は、いわゆるSkippedAreas
配列です。ランダムな文字を含めることができます。これは複製できず、範囲内にありますA-Q
。
アイデアは何ですか -SkippedAreas
配列 ="A", "C"
とNumberOfAreas
= 5 がある場合、または文字をスキップして次の 2 文字を追加することで、5 に等しい値を"A", "B", "C", "D", "E"
維持する必要があるため、- になります。NumberOfAreas
"A"
"C"
NumberOfAreas
"B", "D", "E", "F", "G"
の範囲内にある文字 (領域) のみをスキップできます。たとえば、 = 5 のNumerOfAreas
場合の基本例を取得し、文字列が の場合、これらの 5 文字のいずれかである文字のみをスキップできます。ただし、任意の文字をスキップすると、次の行へのアクセスが開かれるため、最初にスキップした場合、次のラウンドで自由に使用でき、ユーザー入力文字列の一部である場合は、スキップして開くことができます。NumerOfAreas
"A", "B", "C", "D", "E"
"A"
"F"
"F"
SkippedAreas
"F"
"G"
ユーザー入力を検証できるアルゴリズムが必要です。