私のプロジェクトでは、顧客がカードを持っていて、7 文字の特定のセキュリティ コードが入っています。その暗証番号から3文字を位置別に聞きたいです。
eg. card security code is **57GHY58**
セキュリティ コードの2、4、7番目の文字は何ですか?
answer is **7H8**
ランダムな位置でその質問を生成する方法とそれを確認する方法は?
private static int[] GetThreeRandomNumbers()
{
List<int> list = new List<int>();
Random r = new Random();
while (list.Count < 3)
{
int num = r.Next(1, 7);
if (!list.Contains(num))
{
list.Add(num);
}
}
list.Sort();
return list.ToArray();
}
インデックス 0 ~ 6 の文字列があります。その範囲からランダムに 3 つのインデックスを選択する必要があります。このRandom
クラスはこれに役立ちます。そのメソッドを見てくださいRandom.Next(int, int)
。指定された範囲から乱数が返されます。あとは、既に使用したインデックスをスキップするだけです。