Run*_*bbo -1 c# arrays random dice
我被要求制作一个带有两个数组(每个骰子一个)的 Dice 程序,并将两个结果相加,例如:2(骰子 1)+ 6(骰子 2)= 8。
该程序必须掷骰子 100 次并显示每次的总和。到目前为止我可以做到这一点,但程序还必须显示哪个和是最频繁的,以及哪个和是最不频繁的。
像这样:sum = [2, 2, 2, 2, 3, 3, 4, 4, 5, 6, 6]。最常见:2;最不常见:5。
我该怎么做?
这就是我的代码的样子:
static void Main(string[] args)
{
Random gerador = new Random();
int[] soma = new int[100];
int rolagem = 0;
for(int i = 0; i < soma.Length; i++)
{
rolagem = 0;
rolagem += gerador.Next(6) + 1;
rolagem += gerador.Next(6) + 1;
soma[i] = rolagem;
}
var mais = soma.GroupBy(item => item).OrderByDescending(g => g.Count()).Select(g => g.Key).First();
//NEED TO FIND OUT LEAST COMMON SUM
for (int j = 1; j < soma.Length; j++)
{
Console.Write("{0} ", soma[j]);
}
Console.WriteLine("Soma mais frequente: {0}, Soma menos frequente: {1}", mais, menos);
Console.ReadKey();
}
Run Code Online (Sandbox Code Playgroud)
你快到了,你可以类似地找到最不常见的一个:
var array = new[] { 1, 1, 1, 1, 4, 2, 2, 3, 3, 3, 5, 5 };
var result = array.GroupBy(i => i).OrderBy(g => g.Count()).Select(g => g.Key).ToList();
var mostCommon = result.Last();
var leastCommon = result.First();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2734 次 |
| 最近记录: |