На данный вопрос уже ответили:
Функция next генерирует одинаковые числа для всех объектов класса. Думаю, проблема в конструкторе с 1 параметром.
public class Tank
{
private string name;
private int ammunition;
private int armor;
private int mobility;
Random rnd;
public Tank()
{
name = "no-name";
ammunition = 0;
armor = 0;
mobility = 0;
}
public Tank(string name)
{
this.name = name;
rnd = new Random();
ammunition = rnd.Next(1, 100);
armor = rnd.Next(1, 100);
mobility = rnd.Next(1, 100);
}
public Tank(string name, int ammunition, int armor, int mobility)
{
this.name = name;
this.ammunition = ammunition;
this.armor = armor;
this.mobility = mobility;
}
public int getAmmo() { return ammunition; }
public int getArmor() { return armor; }
public int getMobility() { return mobility; }
public override string ToString()
{
return string.Format($"{name}: боекомплект - {ammunition}, броня - {armor}, маневренность - {mobility}");
}
public static Tank operator * (Tank t1, Tank t2)
{
Tank winner;
if (t1.getAmmo() > t2.getAmmo() && t1.getArmor() > t2.getArmor())
{
winner = t1;
return winner;
}
if (t1.getAmmo() > t2.getAmmo() && t1.getMobility() > t2.getMobility())
{
winner = t1;
return winner;
}
if (t1.getArmor() > t2.getArmor() && t1.getMobility() > t2.getMobility())
{
winner = t1;
return winner;
}
else
winner = t2;
return winner;
}
}
class Program
{
static void Main(string[] args)
{
Random rnd = new Random();
Tank win;
Tank[] nashi = new Tank[5];
Tank[] vashi = new Tank[5];
for (int i = 0; i < nashi.Length; i++)
{
//nashi[i] = new Tank("T-34", rnd.Next(1, 100), rnd.Next(1, 100), rnd.Next(1, 100));
//vashi[i] = new Tank("Pantera", rnd.Next(1, 100), rnd.Next(1, 100), rnd.Next(1, 100));
nashi[i] = new Tank("T-34");
vashi[i] = new Tank("Pantera");
Console.WriteLine($"{nashi[i]} vs {vashi[i]}");
win = nashi[i] * vashi[i];
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine($"Победитель: {win}\n");
Console.ResetColor();
}
Console.ReadKey();
}
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости