Ok, así que tengo una aplicación tiro de dados ...El código C# solo da los resultados esperados en el paso a paso?
Cuando me paso a través del código funciona normalmente y 'resultados' contiene el número correcto de los resultados de tiro y que parecen ser al azar, cuando deje el código de ejecuta y haz exactamente lo mismo que produce un conjunto de números idénticos.
Estoy seguro de que este es un error lógico que no puedo ver, pero tocarlo durante horas no mejoró la situación, por lo que cualquier ayuda es muy útil. :)
class Dice
{
public int[] Roll(int _throws, int _sides, int _count)
{
Random rnd = new Random();
int[] results = new int[_throws];
// for each set of dice to throw pass data to calculate method
for (int i = 0; i < _throws; i++)
{
int thisThrow = Calculate(_sides, _count);
//add each throw to a new index of array... repeat for every throw
results[i] = thisThrow;
}
return results;
}
private int Calculate(int _sides, int _count)
{
Random rnd = new Random();
int[] result = new int[_count];
int total = 0;
//for each dice to throw put data into result
for (int i = 0; i < _count; i++)
{
result[i] = rnd.Next(1, _sides);
}
//count the values in result
for (int x = 0; x < _count; x++)
{
total = total + result[x];
}
//return total of all dice to Roll method
return total;
}
}
gracias modificando ahora :) – Yoda
maldita extracción rápida! –
@Ian: he visto esto suceder demasiadas veces para no detectarlo de inmediato :) – leppie